From 1e931c6ed55deeaa30f1cb5f04e40f8efe59a569 Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Mon, 23 Oct 2023 17:17:27 -0400 Subject: [PATCH 01/48] ppk tf support for basic widgets --- .../internal/utils/api_instances_helper.go | 9 + datadog/provider.go | 1 + datadog/resource_datadog_powerpack.go | 433 ++++++++++++++++++ go.mod | 2 +- go.sum | 4 +- 5 files changed, 446 insertions(+), 3 deletions(-) create mode 100644 datadog/resource_datadog_powerpack.go diff --git a/datadog/internal/utils/api_instances_helper.go b/datadog/internal/utils/api_instances_helper.go index e6930bb554..0516764dfe 100644 --- a/datadog/internal/utils/api_instances_helper.go +++ b/datadog/internal/utils/api_instances_helper.go @@ -67,6 +67,7 @@ type ApiInstances struct { opsgenieIntegrationApiV2 *datadogV2.OpsgenieIntegrationApi organizationsApiV2 *datadogV2.OrganizationsApi processesApiV2 *datadogV2.ProcessesApi + powerpackApiV2 *datadogV2.PowerpackApi restrictionPolicyApiV2 *datadogV2.RestrictionPoliciesApi rolesApiV2 *datadogV2.RolesApi rumApiV2 *datadogV2.RUMApi @@ -487,6 +488,14 @@ func (i *ApiInstances) GetProcessesApiV2() *datadogV2.ProcessesApi { return i.processesApiV2 } +// GetPowerpackApiV2 get instance of PowerpackApi +func (i *ApiInstances) GetPowerpackApiV2() *datadogV2.PowerpackApi { + if i.powerpackApiV2 == nil { + i.powerpackApiV2 = datadogV2.NewPowerpackApi(i.HttpClient) + } + return i.powerpackApiV2 +} + // GetRolesApiV2 get instance of RolesApi func (i *ApiInstances) GetRolesApiV2() *datadogV2.RolesApi { if i.rolesApiV2 == nil { diff --git a/datadog/provider.go b/datadog/provider.go index 6eb9931693..39274fbf67 100644 --- a/datadog/provider.go +++ b/datadog/provider.go @@ -191,6 +191,7 @@ func Provider() *schema.Provider { "datadog_monitor_config_policy": resourceDatadogMonitorConfigPolicy(), "datadog_monitor_json": resourceDatadogMonitorJSON(), "datadog_organization_settings": resourceDatadogOrganizationSettings(), + "datadog_powerpack": resourceDatadogPowerpack(), "datadog_role": resourceDatadogRole(), "datadog_rum_application": resourceDatadogRUMApplication(), "datadog_service_account": resourceDatadogServiceAccount(), diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go new file mode 100644 index 0000000000..42f4179031 --- /dev/null +++ b/datadog/resource_datadog_powerpack.go @@ -0,0 +1,433 @@ +package datadog + +import ( + "context" + "fmt" + "net/http" + "strings" + + "github.com/hashicorp/terraform-plugin-sdk/v2/helper/validation" + + "github.com/DataDog/datadog-api-client-go/v2/api/datadogV1" + + "github.com/DataDog/datadog-api-client-go/v2/api/datadogV2" + "github.com/hashicorp/terraform-plugin-sdk/v2/diag" + "github.com/hashicorp/terraform-plugin-sdk/v2/helper/retry" + "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" + + "github.com/terraform-providers/terraform-provider-datadog/datadog/internal/utils" +) + +func resourceDatadogPowerpack() *schema.Resource { + return &schema.Resource{ + Description: "Provides a Datadog powerpack resource. This can be used to create and manage Datadog powerpacks.", + CreateContext: resourceDatadogPowerpackCreate, + UpdateContext: resourceDatadogPowerpackUpdate, + ReadContext: resourceDatadogPowerpackRead, + DeleteContext: resourceDatadogPowerpackDelete, + Importer: &schema.ResourceImporter{ + StateContext: schema.ImportStatePassthroughContext, + }, + SchemaFunc: func() map[string]*schema.Schema { + return map[string]*schema.Schema{ + "description": { + Type: schema.TypeString, + Optional: true, + Description: "The description of the powerpack.", + }, + "name": { + Type: schema.TypeString, + Optional: true, + Description: "The name for the powerpack.", + }, + "show_title": { + Type: schema.TypeBool, + Optional: true, + Description: "Whether or not title should be displayed in the powerpack.", + }, + "tags": { + Type: schema.TypeList, + Optional: true, + Description: "List of tags to identify this powerpack.", + Elem: &schema.Schema{ + Type: schema.TypeString, + }, + }, + "template_variables": { + Type: schema.TypeList, + Optional: true, + Description: "The list of template variables for this powerpack.", + Elem: &schema.Resource{ + Schema: getPowerpackTemplateVariableSchema(), + }, + }, + "widget": { + Type: schema.TypeList, + Optional: true, + Description: "The list of widgets to display in the powerpack.", + Elem: &schema.Resource{ + Schema: getWidgetSchema(), + }, + }, + } + }, + } +} + +func buildPowerpackTemplateVariables(terraformTemplateVariables []interface{}) *[]datadogV2.PowerpackTemplateVariable { + ppkTemplateVariables := make([]datadogV2.PowerpackTemplateVariable, len(terraformTemplateVariables)) + for i, ttv := range terraformTemplateVariables { + if ttv == nil { + continue + } + terraformTemplateVariable := ttv.(map[string]interface{}) + var ppkTemplateVariable datadogV2.PowerpackTemplateVariable + if v, ok := terraformTemplateVariable["name"].(string); ok && len(v) != 0 { + ppkTemplateVariable.SetName(v) + } + if v, ok := terraformTemplateVariable["defaults"].([]interface{}); ok && len(v) != 0 { + var defaults []string + for _, s := range v { + defaults = append(defaults, s.(string)) + } + ppkTemplateVariable.SetDefaults(defaults) + } + ppkTemplateVariables[i] = ppkTemplateVariable + } + return &ppkTemplateVariables +} + +func buildPowerpackTerraformTemplateVariables(powerpackTemplateVariables []datadogV2.PowerpackTemplateVariable) *[]map[string]interface{} { + terraformTemplateVariables := make([]map[string]interface{}, len(powerpackTemplateVariables)) + for i, templateVariable := range powerpackTemplateVariables { + terraformTemplateVariable := map[string]interface{}{} + if v, ok := templateVariable.GetNameOk(); ok { + terraformTemplateVariable["name"] = *v + } + if v, ok := templateVariable.GetDefaultsOk(); ok && len(*v) > 0 { + var tags []string + tags = append(tags, *v...) + terraformTemplateVariable["defaults"] = tags + } + terraformTemplateVariables[i] = terraformTemplateVariable + } + return &terraformTemplateVariables +} +func getPowerpackTemplateVariableSchema() map[string]*schema.Schema { + return map[string]*schema.Schema{ + "name": { + Type: schema.TypeString, + Required: true, + Description: "The name of the powerpack template variable.", + }, + "defaults": { + Type: schema.TypeList, + Optional: true, + Elem: &schema.Schema{ + Type: schema.TypeString, + ValidateFunc: validation.StringIsNotEmpty, + }, + Description: "One or many default values for powerpack template variables on load. If more than one default is specified, they will be unioned together with `OR`.", + }, + } +} + +func resourceDatadogPowerpackCreate(ctx context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { + providerConf := meta.(*ProviderConfiguration) + apiInstances := providerConf.DatadogApiInstances + auth := providerConf.Auth + powerpackPayload, diags := buildDatadogPowerpack(ctx, d) + if diags != nil { + diags = append(diags, diag.Diagnostic{ + Severity: diag.Error, + Summary: fmt.Sprintf("failed to parse resource configuration"), + }) + return diags + } + powerpack, httpresp, err := apiInstances.GetPowerpackApiV2().CreatePowerpack(auth, *powerpackPayload) + if err != nil { + return utils.TranslateClientErrorDiag(err, httpresp, "error creating powerpack error A") + } + if err := utils.CheckForUnparsed(powerpack); err != nil { + return diag.FromErr(err) + } + d.SetId(*powerpack.Data.Id) + + var getPowerpackResponse datadogV2.PowerpackResponse + var httpResponse *http.Response + + err = retry.RetryContext(ctx, d.Timeout(schema.TimeoutCreate), func() *retry.RetryError { + getPowerpackResponse, httpResponse, err = apiInstances.GetPowerpackApiV2().GetPowerpack(auth, *powerpack.Data.Id) + + if err != nil { + if httpResponse != nil && httpResponse.StatusCode == 404 { + return retry.RetryableError(fmt.Errorf("powerpack not created yet")) + } + return retry.NonRetryableError(err) + } + + if err := utils.CheckForUnparsed(getPowerpackResponse); err != nil { + return retry.NonRetryableError(err) + } + + return nil + }) + + if err != nil { + return diag.FromErr(err) + } + + return updatePowerpackState(d, &getPowerpackResponse) +} + +func resourceDatadogPowerpackUpdate(ctx context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { + providerConf := meta.(*ProviderConfiguration) + apiInstances := providerConf.DatadogApiInstances + auth := providerConf.Auth + id := d.Id() + powerpack, diags := buildDatadogPowerpack(ctx, d) + if diags != nil { + diags = append(diags, diag.Diagnostic{ + Severity: diag.Error, + Summary: fmt.Sprintf("failed to parse resource configuration"), + }) + return diags + } + + updatedPowerpackResponse, httpResponse, err := apiInstances.GetPowerpackApiV2().UpdatePowerpack(auth, id, *powerpack) + if err != nil { + if httpResponse != nil && httpResponse.StatusCode == 404 { + diags = append(diags, diag.Diagnostic{ + Severity: diag.Error, + Summary: fmt.Sprintf("failure: %s", err), + }) + return diags + } + } + if err := utils.CheckForUnparsed(updatedPowerpackResponse); err != nil { + return diag.FromErr(err) + } + return updatePowerpackState(d, &updatedPowerpackResponse) +} + +func resourceDatadogPowerpackRead(ctx context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { + providerConf := meta.(*ProviderConfiguration) + apiInstances := providerConf.DatadogApiInstances + auth := providerConf.Auth + id := d.Id() + powerpack, httpResponse, err := apiInstances.GetPowerpackApiV2().GetPowerpack(auth, id) + if err != nil { + if httpResponse != nil && httpResponse.StatusCode == 404 { + d.SetId("") + return nil + } + return utils.TranslateClientErrorDiag(err, httpResponse, "error getting powerpack") + } + if err := utils.CheckForUnparsed(powerpack); err != nil { + return diag.FromErr(err) + } + + return updatePowerpackState(d, &powerpack) +} + +func buildDatadogPowerpack(ctx context.Context, d *schema.ResourceData) (*datadogV2.Powerpack, diag.Diagnostics) { + var diags diag.Diagnostics + attributes := datadogV2.NewPowerpackAttributesWithDefaults() + + // Set Description + if v, ok := d.GetOk("description"); ok { + attributes.SetDescription(v.(string)) + } + + // Set Name + if v, ok := d.GetOk("name"); ok { + attributes.SetName(v.(string)) + } + + // Set Tags + if v, ok := d.GetOk("tags"); ok { + tags := make([]string, len(v.([]interface{}))) + for i, tag := range v.([]interface{}) { + tags[i] = tag.(string) + } + attributes.SetTags(tags) + } + + // Set TemplateVariables + if v, ok := d.GetOk("template_variables"); ok { + templateVariables := *buildPowerpackTemplateVariables(v.([]interface{})) + attributes.SetTemplateVariables(templateVariables) + } + + // Create group widget object + var groupWidget datadogV2.PowerpackGroupWidget + + var definition datadogV2.PowerpackGroupWidgetDefinition + + // Group Widget type and layout type should always be set to the following values + definition.SetLayoutType("ordered") + definition.SetType("group") + + // User configurable properties defined in the group widget + if v, ok := d.GetOk("show_title"); ok { + definition.SetShowTitle(v.(bool)) + } + + // Note: The Powerpack name is the group title. + if v, ok := d.GetOk("name"); ok { + definition.SetTitle(v.(string)) + } + + // Fetch widgets in the request form + requestWidgets := d.Get("widget").([]interface{}) + // Convert and validate them using the Dashboard widget type + datadogWidgets, _ := buildDatadogWidgets(&requestWidgets) + // Convert to TF widget type for easier parsing + terraformWidgets, _ := buildTerraformWidgets(datadogWidgets, d) + // Finally, build JSON Powerpack API compatible widgets + powerpackWidgets, diags := dashboardWidgetsToPpkWidgets(terraformWidgets) + + if diags != nil { + return nil, diags + } + + // Set Widget + definition.SetWidgets(powerpackWidgets) + + groupWidget.Definition = definition + + attributes.GroupWidget = groupWidget + + req := datadogV2.NewPowerpackWithDefaults() + req.Data = datadogV2.NewPowerpackDataWithDefaults() + // Set type to powerpack, which is the only acceptable value for a powerpack request + req.Data.SetType("powerpack") + + req.Data.SetAttributes(*attributes) + + return req, diags + +} + +func dashboardWidgetsToPpkWidgets(terraformWidgets *[]map[string]interface{}) ([]datadogV2.PowerpackInnerWidgets, diag.Diagnostics) { + var diags diag.Diagnostics + + widgets := make([]datadogV2.PowerpackInnerWidgets, len(*terraformWidgets)) + for i, terraformWidget := range *terraformWidgets { + if terraformWidget == nil { + continue + } + widgetDef := make(map[string]interface{}) + + for widgetType, terraformDefinition := range terraformWidget { + // Each terraform definition contains an ID field which is unused, + // and a widget definition which we need to process + if widgetType == "id" { + continue + } + widgetDef = terraformDefinition.([]map[string]interface{})[0] + // The type in the dictionary is in the format _definition, where can contain + // a type with multiple underscores. To parse a valid type name, we take a substring up until the last + // underscore. Ex: free_text_definition -> free_text, hostmap_definition -> hostmap + widgetDef["type"] = widgetType[:strings.LastIndex(widgetType, "_")] + } + widgetsDDItem := datadogV2.NewPowerpackInnerWidgets(widgetDef) + + widgets[i] = *widgetsDDItem + } + return widgets, diags +} + +func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) (*[]datadogV1.Widget, diag.Diagnostics) { + var diags diag.Diagnostics + var datadogWidgets []datadogV1.Widget + for _, terraformWidget := range ppkWidgets { + var definition datadogV1.WidgetDefinition + widgetDefinition := terraformWidget.Definition + if widgetDefinition == nil { + continue + } + // Add new powerpack-supported widgets here + // We save Powerpack widgets as Dashboard widgets so we need to convert them to the appropriate widget definition object. + widgetType := widgetDefinition["type"] + switch widgetType { + case "alert_graph": + definition = datadogV1.AlertGraphWidgetDefinitionAsWidgetDefinition(buildDatadogAlertGraphDefinition(widgetDefinition)) + case "check_status": + definition = datadogV1.CheckStatusWidgetDefinitionAsWidgetDefinition(buildDatadogCheckStatusDefinition(widgetDefinition)) + case "free_text": + definition = datadogV1.FreeTextWidgetDefinitionAsWidgetDefinition(buildDatadogFreeTextDefinition(widgetDefinition)) + case "iframe": + definition = datadogV1.IFrameWidgetDefinitionAsWidgetDefinition(buildDatadogIframeDefinition(widgetDefinition)) + case "image": + definition = datadogV1.ImageWidgetDefinitionAsWidgetDefinition(buildDatadogImageDefinition(widgetDefinition)) + case "note": + definition = datadogV1.NoteWidgetDefinitionAsWidgetDefinition(buildDatadogNoteDefinition(widgetDefinition)) + case "servicemap": + definition = datadogV1.ServiceMapWidgetDefinitionAsWidgetDefinition(buildDatadogServiceMapDefinition(widgetDefinition)) + default: + diags = append(diags, diag.Diagnostic{ + Severity: diag.Error, + Summary: fmt.Sprintf("unsupported widget type: %s", terraformWidget.Definition["type"]), + }) + continue + } + + datadogWidget := datadogV1.NewWidget(definition) + + datadogWidgets = append(datadogWidgets, *datadogWidget) + } + return &datadogWidgets, diags +} + +func updatePowerpackState(d *schema.ResourceData, powerpack *datadogV2.PowerpackResponse) diag.Diagnostics { + if powerpack.Data == nil { + return diag.Errorf("error updating powerpack: %s", powerpack) + } + // Set description + if err := d.Set("description", powerpack.Data.Attributes.GetDescription()); err != nil { + return diag.FromErr(err) + } + + // Set name + if err := d.Set("name", powerpack.Data.Attributes.GetName()); err != nil { + return diag.FromErr(err) + } + + // Set tags + if err := d.Set("tags", powerpack.Data.Attributes.GetTags()); err != nil { + return diag.FromErr(err) + } + + // Set template variables + templateVariables := buildPowerpackTerraformTemplateVariables(powerpack.Data.Attributes.GetTemplateVariables()) + if err := d.Set("template_variables", templateVariables); err != nil { + return diag.FromErr(err) + } + + // Set widgets + dashWidgets, diags := ppkWidgetsToDashboardWidgets(powerpack.Data.Attributes.GetGroupWidget().Definition.Widgets) + if diags != nil { + return diags + } + terraformWidgets, err := buildTerraformWidgets(dashWidgets, d) + if err != nil { + return diag.FromErr(err) + } + if err := d.Set("widget", terraformWidgets); err != nil { + return diag.FromErr(fmt.Errorf("trouble setting widget")) + } + + return nil +} + +func resourceDatadogPowerpackDelete(ctx context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { + providerConf := meta.(*ProviderConfiguration) + apiInstances := providerConf.DatadogApiInstances + auth := providerConf.Auth + id := d.Id() + if httpresp, err := apiInstances.GetPowerpackApiV2().DeletePowerpack(auth, id); err != nil { + return utils.TranslateClientErrorDiag(err, httpresp, "error deleting powerpack") + } + return nil +} diff --git a/go.mod b/go.mod index 09b49dd940..dc19bd5dc7 100644 --- a/go.mod +++ b/go.mod @@ -1,7 +1,7 @@ module github.com/terraform-providers/terraform-provider-datadog require ( - github.com/DataDog/datadog-api-client-go/v2 v2.18.0 + github.com/DataDog/datadog-api-client-go/v2 v2.18.1-0.20231020110506-54467ff19116 github.com/DataDog/dd-sdk-go-testing v0.0.0-20211116174033-1cd082e322ad github.com/dnaeon/go-vcr v1.0.1 github.com/hashicorp/go-cleanhttp v0.5.2 diff --git a/go.sum b/go.sum index ea16afc981..2d59ca36b7 100644 --- a/go.sum +++ b/go.sum @@ -1,7 +1,7 @@ cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= -github.com/DataDog/datadog-api-client-go/v2 v2.18.0 h1:QkX1vY1JtvDeF6N6EarPrJMHlerVGdTvGQOUWqfeVDs= -github.com/DataDog/datadog-api-client-go/v2 v2.18.0/go.mod h1:lHlfhsNQ2qZclvpVQTfrGowUDIdIzAao38A05f9EQpc= +github.com/DataDog/datadog-api-client-go/v2 v2.18.1-0.20231020110506-54467ff19116 h1:+1Z7sjGCVSxn44AwKCTbaR+0RukD+SCD/+8s5mqKdh4= +github.com/DataDog/datadog-api-client-go/v2 v2.18.1-0.20231020110506-54467ff19116/go.mod h1:lHlfhsNQ2qZclvpVQTfrGowUDIdIzAao38A05f9EQpc= github.com/DataDog/datadog-go v4.4.0+incompatible/go.mod h1:LButxg5PwREeZtORoXG3tL4fMGNddJ+vMq1mwgfaqoQ= github.com/DataDog/datadog-go v4.8.3+incompatible h1:fNGaYSuObuQb5nzeTQqowRAd9bpDIRRV4/gUtIBjh8Q= github.com/DataDog/datadog-go v4.8.3+incompatible/go.mod h1:LButxg5PwREeZtORoXG3tL4fMGNddJ+vMq1mwgfaqoQ= From 1c04f53f9571afc3e0cf13b64539216f312e75ce Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Mon, 23 Oct 2023 20:17:27 -0400 Subject: [PATCH 02/48] ppk first pass at tests --- datadog/resource_datadog_powerpack.go | 2 +- .../TestAccDatadogPowerpackFreeText.freeze | 1 + .../TestAccDatadogPowerpackFreeText.yaml | 22 +++ .../TestAccDatadogPowerpack_update.freeze | 1 + .../TestAccDatadogPowerpack_update.yaml | 22 +++ datadog/tests/provider_test.go | 2 + ...source_datadog_powerpack_free_text_test.go | 49 ++++++ .../tests/resource_datadog_powerpack_test.go | 144 ++++++++++++++++++ 8 files changed, 242 insertions(+), 1 deletion(-) create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.freeze create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.yaml create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpack_update.freeze create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpack_update.yaml create mode 100644 datadog/tests/resource_datadog_powerpack_free_text_test.go create mode 100644 datadog/tests/resource_datadog_powerpack_test.go diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index 42f4179031..556ced8463 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -382,7 +382,7 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) func updatePowerpackState(d *schema.ResourceData, powerpack *datadogV2.PowerpackResponse) diag.Diagnostics { if powerpack.Data == nil { - return diag.Errorf("error updating powerpack: %s", powerpack) + return diag.Errorf("error updating powerpack") } // Set description if err := d.Set("description", powerpack.Data.Attributes.GetDescription()); err != nil { diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.freeze new file mode 100644 index 0000000000..c7d0cc6b5b --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.freeze @@ -0,0 +1 @@ +2023-10-23T19:46:37.306026-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.yaml new file mode 100644 index 0000000000..a9ad5a3a8f --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.yaml @@ -0,0 +1,22 @@ +--- +version: 1 +interactions: +- request: + body: | + {"description":"Created using the Datadog provider in Terraform","id":"","is_read_only":true,"layout_type":"free","notify_list":[],"tags":[],"template_variable_presets":[],"template_variables":[],"title":"tf-TestAccDatadogPowerpackFreeText-local-1698104797","widgets":[{"definition":{"color":"#eb364b","font_size":"56","text":"Free Text","text_align":"left","type":"free_text"},"layout":{"height":43,"width":32,"x":5,"y":5}}]} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v1/dashboard + method: POST + response: + body: '{"status":"error","code":403,"errors":["Forbidden"],"statuspage":"{{ .Values.status_page_link }}","twitter":"http://twitter.com/datadogops","email":"support@datadoghq.com"}' + headers: + Content-Type: + - application/json + status: 403 Forbidden + code: 403 + duration: "" diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpack_update.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpack_update.freeze new file mode 100644 index 0000000000..c223000124 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpack_update.freeze @@ -0,0 +1 @@ +2023-10-23T18:13:16.673639-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpack_update.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpack_update.yaml new file mode 100644 index 0000000000..329841caa2 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpack_update.yaml @@ -0,0 +1,22 @@ +--- +version: 1 +interactions: +- request: + body: | + {"data":{"attributes":{"description":"Test Powerpack","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpack_update-local-1698099196","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"}}]}},"name":"tf-TestAccDatadogPowerpack_update-local-1698099196","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks + method: POST + response: + body: '{"status":"error","code":403,"errors":["Forbidden"],"statuspage":"{{ .Values.status_page_link }}","twitter":"http://twitter.com/datadogops","email":"support@datadoghq.com"}' + headers: + Content-Type: + - application/json + status: 403 Forbidden + code: 403 + duration: "" diff --git a/datadog/tests/provider_test.go b/datadog/tests/provider_test.go index 24387aa411..8eb10d48c2 100644 --- a/datadog/tests/provider_test.go +++ b/datadog/tests/provider_test.go @@ -133,6 +133,8 @@ var testFiles2EndpointTags = map[string]string{ "tests/resource_datadog_dashboard_topology_map_test": "dashboards", "tests/resource_datadog_dashboard_trace_service_test": "dashboards", "tests/resource_datadog_dashboard_treemap_test": "dashboards", + "tests/resource_datadog_powerpack_test": "powerpacks", + "tests/resource_datadog_powerpack_free_text_test": "powerpacks", "tests/resource_datadog_downtime_test": "downtimes", "tests/resource_datadog_downtime_schedule_test": "downtimes", "tests/resource_datadog_integration_aws_lambda_arn_test": "integration-aws", diff --git a/datadog/tests/resource_datadog_powerpack_free_text_test.go b/datadog/tests/resource_datadog_powerpack_free_text_test.go new file mode 100644 index 0000000000..aa3900c168 --- /dev/null +++ b/datadog/tests/resource_datadog_powerpack_free_text_test.go @@ -0,0 +1,49 @@ +package test + +import ( + "testing" +) + +const datadogPowerpackFreeTextConfig = ` +resource "datadog_powerpack" "free_text_powerpack" { + title = "{{uniq}}" + description = "Created using the Datadog provider in Terraform" + layout_type = "free" + is_read_only = "true" + + widget { + free_text_definition { + color = "#eb364b" + text = "Free Text" + font_size = "56" + text_align = "left" + } + widget_layout { + height = 43 + width = 32 + x = 5 + y = 5 + } + } +} +` + +var datadogPowerpackFreeTextAsserts = []string{ + "widget.0.widget_layout.0.y = 5", + "widget.0.free_text_definition.0.text = Free Text", + "layout_type = free", + "description = Created using the Datadog provider in Terraform", + "widget.0.free_text_definition.0.font_size = 56", + "is_read_only = true", + "widget.0.free_text_definition.0.color = #eb364b", + "widget.0.widget_layout.0.width = 32", + "widget.0.widget_layout.0.height = 43", + "widget.0.free_text_definition.0.text_align = left", + "title = {{uniq}}", + "widget.0.widget_layout.0.x = 5", + "widget.0.layout.% = 0", +} + +func TestAccDatadogPowerpackFreeText(t *testing.T) { + testAccDatadogPowerpackWidgetUtil(t, datadogPowerpackFreeTextConfig, "datadog_powerpack.free_text_powerpack", datadogPowerpackFreeTextAsserts) +} diff --git a/datadog/tests/resource_datadog_powerpack_test.go b/datadog/tests/resource_datadog_powerpack_test.go new file mode 100644 index 0000000000..fdce2e038f --- /dev/null +++ b/datadog/tests/resource_datadog_powerpack_test.go @@ -0,0 +1,144 @@ +package test + +import ( + "context" + "fmt" + "strings" + "testing" + + "github.com/terraform-providers/terraform-provider-datadog/datadog" + "github.com/terraform-providers/terraform-provider-datadog/datadog/internal/utils" + + "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" + "github.com/hashicorp/terraform-plugin-testing/helper/resource" + "github.com/hashicorp/terraform-plugin-testing/terraform" +) + +func datadogSimplePowerpackConfig(uniq string) string { + return fmt.Sprintf(` +resource "datadog_powerpack" "simple_powerpack" { + name = "%s" + tags = ["tag:foo1"] + description = "Test Powerpack" + + template_variables { + defaults = ["defaults"] + name = "datacenter" + } + widget { + iframe_definition { + url = "https://google.com" + } + } +}`, uniq) +} + +var datadogSimplePowerpackConfigAsserts = []string{ + // Dashboard metadata + "description = Test Powerpack", + "layout_type = ordered", + "widget.# = 1", + "tags.# = 1", + "tags.0 = tag:foo1", + // IFrame widget + "widget.0.iframe_definition.0.url = http://google.com", + // Template Variables + "template_variable.# = 1", + "template_variable.0.name = datacenter", + "template_variable.0.prefix = host", + "template_variable.0.defaults.# = 1", + "template_variable.0.defaults.0 = default", +} + +func TestAccDatadogPowerpack_update(t *testing.T) { + t.Parallel() + ctx, accProviders := testAccProviders(context.Background(), t) + dbName := uniqueEntityName(ctx, t) + asserts := datadogSimplePowerpackConfigAsserts + asserts = append(asserts, fmt.Sprintf("title = %s", dbName)) + accProvider := testAccProvider(t, accProviders) + checks := testCheckResourceAttrs("datadog_powerpack.simple_powerpack", checkPowerpackExists(accProvider), asserts) + + resource.Test(t, resource.TestCase{ + PreCheck: func() { testAccPreCheck(t) }, + ProviderFactories: accProviders, + CheckDestroy: checkPowerpackDestroy(accProvider), + Steps: []resource.TestStep{ + { + Config: datadogSimplePowerpackConfig(dbName), + Check: resource.ComposeTestCheckFunc(checks...), + }, + }, + }) +} + +func checkPowerpackExists(accProvider func() (*schema.Provider, error)) resource.TestCheckFunc { + return func(s *terraform.State) error { + provider, _ := accProvider() + providerConf := provider.Meta().(*datadog.ProviderConfiguration) + apiInstances := providerConf.DatadogApiInstances + auth := providerConf.Auth + + for _, r := range s.RootModule().Resources { + if r.Type != "datadog_powerpack" { + continue + } + if _, _, err := apiInstances.GetPowerpackApiV2().GetPowerpack(auth, r.Primary.ID); err != nil { + return fmt.Errorf("received an error retrieving powerpack %s", err) + } + } + return nil + } +} + +func checkPowerpackDestroy(accProvider func() (*schema.Provider, error)) resource.TestCheckFunc { + return func(s *terraform.State) error { + provider, _ := accProvider() + providerConf := provider.Meta().(*datadog.ProviderConfiguration) + apiInstances := providerConf.DatadogApiInstances + auth := providerConf.Auth + + err := utils.Retry(2, 10, func() error { + for _, r := range s.RootModule().Resources { + if r.Type != "datadog_powerpack" { + continue + } + if _, httpResp, err := apiInstances.GetPowerpackApiV2().GetPowerpack(auth, r.Primary.ID); err != nil { + if httpResp != nil && httpResp.StatusCode == 404 { + return nil + } + return &utils.RetryableError{Prob: fmt.Sprintf("received an error retrieving Powerpack %s", err)} + } + return &utils.RetryableError{Prob: "Powerpack still exists"} + } + return nil + }) + return err + } +} + +func testAccDatadogPowerpackWidgetUtil(t *testing.T, config string, name string, assertions []string) { + t.Parallel() + ctx, accProviders := testAccProviders(context.Background(), t) + uniq := uniqueEntityName(ctx, t) + replacer := strings.NewReplacer("{{uniq}}", uniq) + config = replacer.Replace(config) + for i := range assertions { + assertions[i] = replacer.Replace(assertions[i]) + } + accProvider := testAccProvider(t, accProviders) + + resource.Test(t, resource.TestCase{ + PreCheck: func() { testAccPreCheck(t) }, + ProviderFactories: accProviders, + CheckDestroy: checkPowerpackDestroy(accProvider), + Steps: []resource.TestStep{ + { + Config: config, + Check: resource.ComposeTestCheckFunc( + testCheckResourceAttrs(name, checkPowerpackExists(accProvider), assertions)..., + ), + }, + }, + }) +} From 2fc9f94e138220490836829470ffc0159c05641e Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Mon, 23 Oct 2023 20:22:04 -0400 Subject: [PATCH 03/48] ppk docs --- docs/resources/powerpack.md | 25432 ++++++++++++++++++++++++++++++++++ 1 file changed, 25432 insertions(+) create mode 100644 docs/resources/powerpack.md diff --git a/docs/resources/powerpack.md b/docs/resources/powerpack.md new file mode 100644 index 0000000000..b83cc1ce05 --- /dev/null +++ b/docs/resources/powerpack.md @@ -0,0 +1,25432 @@ +--- +# generated by https://github.com/hashicorp/terraform-plugin-docs +page_title: "datadog_powerpack Resource - terraform-provider-datadog" +subcategory: "" +description: |- + Provides a Datadog powerpack resource. This can be used to create and manage Datadog powerpacks. +--- + +# datadog_powerpack (Resource) + +Provides a Datadog powerpack resource. This can be used to create and manage Datadog powerpacks. + + + + +## Schema + +### Optional + +- `description` (String) The description of the powerpack. +- `name` (String) The name for the powerpack. +- `show_title` (Boolean) Whether or not title should be displayed in the powerpack. +- `tags` (List of String) List of tags to identify this powerpack. +- `template_variables` (Block List) The list of template variables for this powerpack. (see [below for nested schema](#nestedblock--template_variables)) +- `widget` (Block List) The list of widgets to display in the powerpack. (see [below for nested schema](#nestedblock--widget)) + +### Read-Only + +- `id` (String) The ID of this resource. + + +### Nested Schema for `template_variables` + +Required: + +- `name` (String) The name of the powerpack template variable. + +Optional: + +- `defaults` (List of String) One or many default values for powerpack template variables on load. If more than one default is specified, they will be unioned together with `OR`. + + + +### Nested Schema for `widget` + +Optional: + +- `alert_graph_definition` (Block List, Max: 1) The definition for a Alert Graph widget. (see [below for nested schema](#nestedblock--widget--alert_graph_definition)) +- `alert_value_definition` (Block List, Max: 1) The definition for a Alert Value widget. (see [below for nested schema](#nestedblock--widget--alert_value_definition)) +- `change_definition` (Block List, Max: 1) The definition for a Change widget. (see [below for nested schema](#nestedblock--widget--change_definition)) +- `check_status_definition` (Block List, Max: 1) The definition for a Check Status widget. (see [below for nested schema](#nestedblock--widget--check_status_definition)) +- `distribution_definition` (Block List, Max: 1) The definition for a Distribution widget. (see [below for nested schema](#nestedblock--widget--distribution_definition)) +- `event_stream_definition` (Block List, Max: 1) The definition for a Event Stream widget. (see [below for nested schema](#nestedblock--widget--event_stream_definition)) +- `event_timeline_definition` (Block List, Max: 1) The definition for a Event Timeline widget. (see [below for nested schema](#nestedblock--widget--event_timeline_definition)) +- `free_text_definition` (Block List, Max: 1) The definition for a Free Text widget. (see [below for nested schema](#nestedblock--widget--free_text_definition)) +- `geomap_definition` (Block List, Max: 1) The definition for a Geomap widget. (see [below for nested schema](#nestedblock--widget--geomap_definition)) +- `group_definition` (Block List, Max: 1) The definition for a Group widget. (see [below for nested schema](#nestedblock--widget--group_definition)) +- `heatmap_definition` (Block List, Max: 1) The definition for a Heatmap widget. (see [below for nested schema](#nestedblock--widget--heatmap_definition)) +- `hostmap_definition` (Block List, Max: 1) The definition for a Hostmap widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition)) +- `iframe_definition` (Block List, Max: 1) The definition for an Iframe widget. (see [below for nested schema](#nestedblock--widget--iframe_definition)) +- `image_definition` (Block List, Max: 1) The definition for an Image widget (see [below for nested schema](#nestedblock--widget--image_definition)) +- `list_stream_definition` (Block List, Max: 1) The definition for a List Stream widget. (see [below for nested schema](#nestedblock--widget--list_stream_definition)) +- `log_stream_definition` (Block List, Max: 1) The definition for an Log Stream widget. (see [below for nested schema](#nestedblock--widget--log_stream_definition)) +- `manage_status_definition` (Block List, Max: 1) The definition for an Manage Status widget. (see [below for nested schema](#nestedblock--widget--manage_status_definition)) +- `note_definition` (Block List, Max: 1) The definition for a Note widget. (see [below for nested schema](#nestedblock--widget--note_definition)) +- `query_table_definition` (Block List, Max: 1) The definition for a Query Table widget. (see [below for nested schema](#nestedblock--widget--query_table_definition)) +- `query_value_definition` (Block List, Max: 1) The definition for a Query Value widget. (see [below for nested schema](#nestedblock--widget--query_value_definition)) +- `run_workflow_definition` (Block List, Max: 1) The definition for a Run Workflow widget. (see [below for nested schema](#nestedblock--widget--run_workflow_definition)) +- `scatterplot_definition` (Block List, Max: 1) The definition for a Scatterplot widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition)) +- `service_level_objective_definition` (Block List, Max: 1) The definition for a Service Level Objective widget. (see [below for nested schema](#nestedblock--widget--service_level_objective_definition)) +- `servicemap_definition` (Block List, Max: 1) The definition for a Service Map widget. (see [below for nested schema](#nestedblock--widget--servicemap_definition)) +- `slo_list_definition` (Block List, Max: 1) The definition for an SLO (Service Level Objective) List widget. (see [below for nested schema](#nestedblock--widget--slo_list_definition)) +- `split_graph_definition` (Block List, Max: 1) The definition for a Split Graph widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition)) +- `sunburst_definition` (Block List, Max: 1) The definition for a Sunburst widget. (see [below for nested schema](#nestedblock--widget--sunburst_definition)) +- `timeseries_definition` (Block List, Max: 1) The definition for a Timeseries widget. (see [below for nested schema](#nestedblock--widget--timeseries_definition)) +- `toplist_definition` (Block List, Max: 1) The definition for a Toplist widget. (see [below for nested schema](#nestedblock--widget--toplist_definition)) +- `topology_map_definition` (Block List, Max: 1) The definition for a Topology Map widget. (see [below for nested schema](#nestedblock--widget--topology_map_definition)) +- `trace_service_definition` (Block List, Max: 1) The definition for a Trace Service widget. (see [below for nested schema](#nestedblock--widget--trace_service_definition)) +- `treemap_definition` (Block List, Max: 1) The definition for a Treemap widget. (see [below for nested schema](#nestedblock--widget--treemap_definition)) +- `widget_layout` (Block List, Max: 1) The layout of the widget on a 'free' dashboard. (see [below for nested schema](#nestedblock--widget--widget_layout)) + +Read-Only: + +- `id` (Number) The ID of the widget. + + +### Nested Schema for `widget.alert_graph_definition` + +Required: + +- `alert_id` (String) The ID of the monitor used by the widget. +- `viz_type` (String) Type of visualization to use when displaying the widget. Valid values are `timeseries`, `toplist`. + +Optional: + +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + + +### Nested Schema for `widget.alert_value_definition` + +Required: + +- `alert_id` (String) The ID of the monitor used by the widget. + +Optional: + +- `precision` (Number) The precision to use when displaying the value. Use `*` for maximum precision. +- `text_align` (String) The alignment of the text in the widget. Valid values are `center`, `left`, `right`. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). +- `unit` (String) The unit for the value displayed in the widget. + + + +### Nested Schema for `widget.change_definition` + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--change_definition--custom_link)) +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple request blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the request block). (see [below for nested schema](#nestedblock--widget--change_definition--request)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.change_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.change_definition.request` + +Optional: + +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--change_definition--request--apm_query)) +- `change_type` (String) Whether to show absolute or relative change. Valid values are `absolute`, `relative`. +- `compare_to` (String) Choose from when to compare current data to. Valid values are `hour_before`, `day_before`, `week_before`, `month_before`. +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--change_definition--request--formula)) +- `increase_good` (Boolean) A Boolean indicating whether an increase in the value is good (displayed in green) or not (displayed in red). +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--change_definition--request--log_query)) +- `order_by` (String) What to order by. Valid values are `change`, `name`, `present`, `past`. +- `order_dir` (String) Widget sorting method. Valid values are `asc`, `desc`. +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--change_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--change_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--change_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--change_definition--request--security_query)) +- `show_present` (Boolean) If set to `true`, displays the current value. + + +### Nested Schema for `widget.change_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--change_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--change_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--change_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.change_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.change_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--change_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.change_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.change_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.change_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--change_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--change_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--change_definition--request--formula--style)) + + +### Nested Schema for `widget.change_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.change_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.change_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.change_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--change_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--change_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--change_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.change_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.change_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--change_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.change_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.change_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.change_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.change_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--change_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--change_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--change_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--change_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--change_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--change_definition--request--query--slo_query)) + + +### Nested Schema for `widget.change_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.change_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.change_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--change_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--change_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--change_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.change_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.change_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--change_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.change_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.change_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.change_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.change_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.change_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.change_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--change_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--change_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--change_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.change_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.change_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--change_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.change_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.change_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.change_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--change_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--change_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--change_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.change_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.change_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--change_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.change_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.change_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + + +### Nested Schema for `widget.check_status_definition` + +Required: + +- `check` (String) The check to use in the widget. +- `grouping` (String) The kind of grouping to use. Valid values are `check`, `cluster`. + +Optional: + +- `group` (String) The check group to use in the widget. +- `group_by` (List of String) When `grouping = "cluster"`, indicates a list of tags to use for grouping. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `tags` (List of String) A list of tags to use in the widget. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + + +### Nested Schema for `widget.distribution_definition` + +Optional: + +- `legend_size` (String) The size of the legend displayed in the widget. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple request blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the request block). (see [below for nested schema](#nestedblock--widget--distribution_definition--request)) +- `show_legend` (Boolean) Whether or not to show the legend on this widget. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.distribution_definition.request` + +Optional: + +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--apm_query)) +- `apm_stats_query` (Block List, Max: 1) (see [below for nested schema](#nestedblock--widget--distribution_definition--request--apm_stats_query)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--security_query)) +- `style` (Block List, Max: 1) The style of the widget graph. One nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--style)) + + +### Nested Schema for `widget.distribution_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.distribution_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.distribution_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.distribution_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.distribution_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.distribution_definition.request.apm_stats_query` + +Required: + +- `env` (String) The environment name. +- `name` (String) The operation name associated with the service. +- `primary_tag` (String) The organization's host group name and value. +- `row_type` (String) The level of detail for the request. Valid values are `service`, `resource`, `span`. +- `service` (String) The service name. + +Optional: + +- `columns` (Block List) Column properties used by the front end for display. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--apm_stats_query--columns)) +- `resource` (String) The resource name. + + +### Nested Schema for `widget.distribution_definition.request.apm_stats_query.columns` + +Required: + +- `name` (String) The column name. + +Optional: + +- `alias` (String) A user-assigned alias for the column. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.distribution_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.distribution_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.distribution_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.distribution_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.distribution_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.distribution_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.distribution_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.distribution_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.distribution_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.distribution_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.distribution_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.distribution_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.distribution_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.distribution_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.distribution_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.distribution_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.distribution_definition.request.style` + +Optional: + +- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. + + + + + +### Nested Schema for `widget.event_stream_definition` + +Required: + +- `query` (String) The query to use in the widget. + +Optional: + +- `event_size` (String) The size to use to display an event. Valid values are `s`, `l`. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `tags_execution` (String) The execution method for multi-value filters, options: `and` or `or`. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + + +### Nested Schema for `widget.event_timeline_definition` + +Required: + +- `query` (String) The query to use in the widget. + +Optional: + +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `tags_execution` (String) The execution method for multi-value filters, options: `and` or `or`. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + + +### Nested Schema for `widget.free_text_definition` + +Required: + +- `text` (String) The text to display in the widget. + +Optional: + +- `color` (String) The color of the text in the widget. +- `font_size` (String) The size of the text in the widget. +- `text_align` (String) The alignment of the text in the widget. Valid values are `center`, `left`, `right`. + + + +### Nested Schema for `widget.geomap_definition` + +Required: + +- `view` (Block List, Min: 1, Max: 1) The view of the world that the map should render. (see [below for nested schema](#nestedblock--widget--geomap_definition--view)) + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--geomap_definition--custom_link)) +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `log_query` or `rum_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--geomap_definition--request)) +- `style` (Block List, Max: 1) The style of the widget graph. One nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--geomap_definition--style)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.geomap_definition.view` + +Required: + +- `focus` (String) The two-letter ISO code of a country to focus the map on (or `WORLD`). + + + +### Nested Schema for `widget.geomap_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.geomap_definition.request` + +Optional: + +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--geomap_definition--request--formula)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--geomap_definition--request--log_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--geomap_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--geomap_definition--request--rum_query)) + + +### Nested Schema for `widget.geomap_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--geomap_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--geomap_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--geomap_definition--request--formula--style)) + + +### Nested Schema for `widget.geomap_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.geomap_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.geomap_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.geomap_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--geomap_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--geomap_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--geomap_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.geomap_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.geomap_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--geomap_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.geomap_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.geomap_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.geomap_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--geomap_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--geomap_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--geomap_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--geomap_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--geomap_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--geomap_definition--request--query--slo_query)) + + +### Nested Schema for `widget.geomap_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.geomap_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.geomap_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--geomap_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--geomap_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--geomap_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.geomap_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.geomap_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--geomap_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.geomap_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.geomap_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.geomap_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.geomap_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.geomap_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.geomap_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--geomap_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--geomap_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--geomap_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.geomap_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.geomap_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--geomap_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.geomap_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.geomap_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + +### Nested Schema for `widget.geomap_definition.style` + +Required: + +- `palette` (String) The color palette to apply to the widget. +- `palette_flip` (Boolean) A Boolean indicating whether to flip the palette tones. + + + + +### Nested Schema for `widget.group_definition` + +Required: + +- `layout_type` (String) The layout type of the group. Valid values are `ordered`. + +Optional: + +- `background_color` (String) The background color of the group title, options: `vivid_blue`, `vivid_purple`, `vivid_pink`, `vivid_orange`, `vivid_yellow`, `vivid_green`, `blue`, `purple`, `pink`, `orange`, `yellow`, `green`, `gray` or `white` +- `banner_img` (String) The image URL to display as a banner for the group. +- `show_title` (Boolean) Whether to show the title or not. Defaults to `true`. +- `title` (String) The title of the group. +- `widget` (Block List) The list of widgets in this group. (see [below for nested schema](#nestedblock--widget--group_definition--widget)) + + +### Nested Schema for `widget.group_definition.widget` + +Optional: + +- `alert_graph_definition` (Block List, Max: 1) The definition for a Alert Graph widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--alert_graph_definition)) +- `alert_value_definition` (Block List, Max: 1) The definition for a Alert Value widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--alert_value_definition)) +- `change_definition` (Block List, Max: 1) The definition for a Change widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition)) +- `check_status_definition` (Block List, Max: 1) The definition for a Check Status widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--check_status_definition)) +- `distribution_definition` (Block List, Max: 1) The definition for a Distribution widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition)) +- `event_stream_definition` (Block List, Max: 1) The definition for a Event Stream widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--event_stream_definition)) +- `event_timeline_definition` (Block List, Max: 1) The definition for a Event Timeline widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--event_timeline_definition)) +- `free_text_definition` (Block List, Max: 1) The definition for a Free Text widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--free_text_definition)) +- `geomap_definition` (Block List, Max: 1) The definition for a Geomap widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition)) +- `heatmap_definition` (Block List, Max: 1) The definition for a Heatmap widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition)) +- `hostmap_definition` (Block List, Max: 1) The definition for a Hostmap widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition)) +- `iframe_definition` (Block List, Max: 1) The definition for an Iframe widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--iframe_definition)) +- `image_definition` (Block List, Max: 1) The definition for an Image widget (see [below for nested schema](#nestedblock--widget--group_definition--widget--image_definition)) +- `list_stream_definition` (Block List, Max: 1) The definition for a List Stream widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--list_stream_definition)) +- `log_stream_definition` (Block List, Max: 1) The definition for an Log Stream widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--log_stream_definition)) +- `manage_status_definition` (Block List, Max: 1) The definition for an Manage Status widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--manage_status_definition)) +- `note_definition` (Block List, Max: 1) The definition for a Note widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--note_definition)) +- `query_table_definition` (Block List, Max: 1) The definition for a Query Table widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition)) +- `query_value_definition` (Block List, Max: 1) The definition for a Query Value widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition)) +- `run_workflow_definition` (Block List, Max: 1) The definition for a Run Workflow widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--run_workflow_definition)) +- `scatterplot_definition` (Block List, Max: 1) The definition for a Scatterplot widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition)) +- `service_level_objective_definition` (Block List, Max: 1) The definition for a Service Level Objective widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--service_level_objective_definition)) +- `servicemap_definition` (Block List, Max: 1) The definition for a Service Map widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--servicemap_definition)) +- `slo_list_definition` (Block List, Max: 1) The definition for an SLO (Service Level Objective) List widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--slo_list_definition)) +- `split_graph_definition` (Block List, Max: 1) The definition for a Split Graph widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition)) +- `sunburst_definition` (Block List, Max: 1) The definition for a Sunburst widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition)) +- `timeseries_definition` (Block List, Max: 1) The definition for a Timeseries widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition)) +- `toplist_definition` (Block List, Max: 1) The definition for a Toplist widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition)) +- `topology_map_definition` (Block List, Max: 1) The definition for a Topology Map widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--topology_map_definition)) +- `trace_service_definition` (Block List, Max: 1) The definition for a Trace Service widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--trace_service_definition)) +- `treemap_definition` (Block List, Max: 1) The definition for a Treemap widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition)) +- `widget_layout` (Block List, Max: 1) The layout of the widget on a 'free' dashboard. (see [below for nested schema](#nestedblock--widget--group_definition--widget--widget_layout)) + +Read-Only: + +- `id` (Number) The ID of the widget. + + +### Nested Schema for `widget.group_definition.widget.alert_graph_definition` + +Required: + +- `alert_id` (String) The ID of the monitor used by the widget. +- `viz_type` (String) Type of visualization to use when displaying the widget. Valid values are `timeseries`, `toplist`. + +Optional: + +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + + +### Nested Schema for `widget.group_definition.widget.alert_value_definition` + +Required: + +- `alert_id` (String) The ID of the monitor used by the widget. + +Optional: + +- `precision` (Number) The precision to use when displaying the value. Use `*` for maximum precision. +- `text_align` (String) The alignment of the text in the widget. Valid values are `center`, `left`, `right`. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). +- `unit` (String) The unit for the value displayed in the widget. + + + +### Nested Schema for `widget.group_definition.widget.change_definition` + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--custom_link)) +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple request blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the request block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.group_definition.widget.change_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.group_definition.widget.change_definition.request` + +Optional: + +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--apm_query)) +- `change_type` (String) Whether to show absolute or relative change. Valid values are `absolute`, `relative`. +- `compare_to` (String) Choose from when to compare current data to. Valid values are `hour_before`, `day_before`, `week_before`, `month_before`. +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--formula)) +- `increase_good` (Boolean) A Boolean indicating whether an increase in the value is good (displayed in green) or not (displayed in red). +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--log_query)) +- `order_by` (String) What to order by. Valid values are `change`, `name`, `present`, `past`. +- `order_dir` (String) Widget sorting method. Valid values are `asc`, `desc`. +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--security_query)) +- `show_present` (Boolean) If set to `true`, displays the current value. + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--formula--style)) + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--query--slo_query)) + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.change_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + + +### Nested Schema for `widget.group_definition.widget.check_status_definition` + +Required: + +- `check` (String) The check to use in the widget. +- `grouping` (String) The kind of grouping to use. Valid values are `check`, `cluster`. + +Optional: + +- `group` (String) The check group to use in the widget. +- `group_by` (List of String) When `grouping = "cluster"`, indicates a list of tags to use for grouping. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `tags` (List of String) A list of tags to use in the widget. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + + +### Nested Schema for `widget.group_definition.widget.distribution_definition` + +Optional: + +- `legend_size` (String) The size of the legend displayed in the widget. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple request blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the request block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request)) +- `show_legend` (Boolean) Whether or not to show the legend on this widget. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.group_definition.widget.distribution_definition.request` + +Optional: + +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--apm_query)) +- `apm_stats_query` (Block List, Max: 1) (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--apm_stats_query)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--security_query)) +- `style` (Block List, Max: 1) The style of the widget graph. One nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--style)) + + +### Nested Schema for `widget.group_definition.widget.distribution_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.distribution_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.distribution_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.distribution_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.distribution_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.distribution_definition.request.apm_stats_query` + +Required: + +- `env` (String) The environment name. +- `name` (String) The operation name associated with the service. +- `primary_tag` (String) The organization's host group name and value. +- `row_type` (String) The level of detail for the request. Valid values are `service`, `resource`, `span`. +- `service` (String) The service name. + +Optional: + +- `columns` (Block List) Column properties used by the front end for display. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--apm_stats_query--columns)) +- `resource` (String) The resource name. + + +### Nested Schema for `widget.group_definition.widget.distribution_definition.request.apm_stats_query.columns` + +Required: + +- `name` (String) The column name. + +Optional: + +- `alias` (String) A user-assigned alias for the column. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.group_definition.widget.distribution_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.distribution_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.distribution_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.distribution_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.distribution_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.distribution_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.group_definition.widget.distribution_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.distribution_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.distribution_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.distribution_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.distribution_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.distribution_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.distribution_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.distribution_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.distribution_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.distribution_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.distribution_definition.request.style` + +Optional: + +- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. + + + + + +### Nested Schema for `widget.group_definition.widget.event_stream_definition` + +Required: + +- `query` (String) The query to use in the widget. + +Optional: + +- `event_size` (String) The size to use to display an event. Valid values are `s`, `l`. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `tags_execution` (String) The execution method for multi-value filters, options: `and` or `or`. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + + +### Nested Schema for `widget.group_definition.widget.event_timeline_definition` + +Required: + +- `query` (String) The query to use in the widget. + +Optional: + +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `tags_execution` (String) The execution method for multi-value filters, options: `and` or `or`. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + + +### Nested Schema for `widget.group_definition.widget.free_text_definition` + +Required: + +- `text` (String) The text to display in the widget. + +Optional: + +- `color` (String) The color of the text in the widget. +- `font_size` (String) The size of the text in the widget. +- `text_align` (String) The alignment of the text in the widget. Valid values are `center`, `left`, `right`. + + + +### Nested Schema for `widget.group_definition.widget.geomap_definition` + +Required: + +- `view` (Block List, Min: 1, Max: 1) The view of the world that the map should render. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--view)) + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--custom_link)) +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `log_query` or `rum_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request)) +- `style` (Block List, Max: 1) The style of the widget graph. One nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--style)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.group_definition.widget.geomap_definition.view` + +Required: + +- `focus` (String) The two-letter ISO code of a country to focus the map on (or `WORLD`). + + + +### Nested Schema for `widget.group_definition.widget.geomap_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.group_definition.widget.geomap_definition.request` + +Optional: + +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--formula)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--log_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--rum_query)) + + +### Nested Schema for `widget.group_definition.widget.geomap_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--formula--style)) + + +### Nested Schema for `widget.group_definition.widget.geomap_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.group_definition.widget.geomap_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.group_definition.widget.geomap_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.group_definition.widget.geomap_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.geomap_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.geomap_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.geomap_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.geomap_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.geomap_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--query--slo_query)) + + +### Nested Schema for `widget.group_definition.widget.geomap_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.group_definition.widget.geomap_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.group_definition.widget.geomap_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.group_definition.widget.geomap_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.group_definition.widget.geomap_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.group_definition.widget.geomap_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.group_definition.widget.geomap_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.group_definition.widget.geomap_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.group_definition.widget.geomap_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.group_definition.widget.geomap_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.group_definition.widget.geomap_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.geomap_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.geomap_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.geomap_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.geomap_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + +### Nested Schema for `widget.group_definition.widget.geomap_definition.style` + +Required: + +- `palette` (String) The color palette to apply to the widget. +- `palette_flip` (Boolean) A Boolean indicating whether to flip the palette tones. + + + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition` + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--custom_link)) +- `event` (Block List) The definition of the event to overlay on the graph. Multiple `event` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--event)) +- `legend_size` (String) The size of the legend displayed in the widget. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the request block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request)) +- `show_legend` (Boolean) Whether or not to show the legend on this widget. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). +- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--yaxis)) + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.event` + +Required: + +- `q` (String) The event query to use in the widget. + +Optional: + +- `tags_execution` (String) The execution method for multi-value filters. + + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request` + +Optional: + +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--apm_query)) +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--formula)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--security_query)) +- `style` (Block List, Max: 1) The style of the widget graph. One nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--style)) + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--formula--style)) + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--query--slo_query)) + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.style` + +Optional: + +- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. + + + + +### Nested Schema for `widget.group_definition.widget.heatmap_definition.yaxis` + +Optional: + +- `include_zero` (Boolean) Always include zero or fit the axis to the data range. +- `label` (String) The label of the axis to display on the graph. +- `max` (String) Specify the maximum value to show on the Y-axis. +- `min` (String) Specify the minimum value to show on the Y-axis. +- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + + + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition` + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--custom_link)) +- `group` (List of String) The list of tags to group nodes by. +- `no_group_hosts` (Boolean) A Boolean indicating whether to show ungrouped nodes. +- `no_metric_hosts` (Boolean) A Boolean indicating whether to show nodes with no metrics. +- `node_type` (String) The type of node used. Valid values are `host`, `container`. +- `request` (Block List, Max: 1) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request)) +- `scope` (List of String) The list of tags to filter nodes by. +- `style` (Block List, Max: 1) The style of the widget graph. One nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--style)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request` + +Optional: + +- `fill` (Block List) The query used to fill the map. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the request block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill)) +- `size` (Block List) The query used to size the map. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the request block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size)) + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill` + +Optional: + +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--apm_query)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--process_query)) +- `q` (String) The metric query to use for this widget. +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--security_query)) + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size` + +Optional: + +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--apm_query)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--process_query)) +- `q` (String) The metric query to use for this widget. +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--security_query)) + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + + +### Nested Schema for `widget.group_definition.widget.hostmap_definition.style` + +Optional: + +- `fill_max` (String) The max value to use to color the map. +- `fill_min` (String) The min value to use to color the map. +- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. +- `palette_flip` (Boolean) A Boolean indicating whether to flip the palette tones. + + + + +### Nested Schema for `widget.group_definition.widget.iframe_definition` + +Required: + +- `url` (String) The URL to use as a data source for the widget. + + + +### Nested Schema for `widget.group_definition.widget.image_definition` + +Required: + +- `url` (String) The URL to use as a data source for the widget. + +Optional: + +- `has_background` (Boolean) Whether to display a background or not. Defaults to `true`. +- `has_border` (Boolean) Whether to display a border or not. Defaults to `true`. +- `horizontal_align` (String) The horizontal alignment for the widget. Valid values are `center`, `left`, `right`. +- `margin` (String) The margins to use around the image. Note: `small` and `large` values are deprecated. Valid values are `sm`, `md`, `lg`, `small`, `large`. +- `sizing` (String) The preferred method to adapt the dimensions of the image. The values are based on the image `object-fit` CSS properties. Note: `zoom`, `fit` and `center` values are deprecated. Valid values are `fill`, `contain`, `cover`, `none`, `scale-down`, `zoom`, `fit`, `center`. +- `url_dark_theme` (String) The URL in dark mode to use as a data source for the widget. +- `vertical_align` (String) The vertical alignment for the widget. Valid values are `center`, `top`, `bottom`. + + + +### Nested Schema for `widget.group_definition.widget.list_stream_definition` + +Required: + +- `request` (Block List, Min: 1) Nested block describing the requests to use when displaying the widget. Multiple `request` blocks are allowed with the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--list_stream_definition--request)) + +Optional: + +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title. Default is 16. + + +### Nested Schema for `widget.group_definition.widget.list_stream_definition.request` + +Required: + +- `columns` (Block List, Min: 1) Widget columns. (see [below for nested schema](#nestedblock--widget--group_definition--widget--list_stream_definition--request--columns)) +- `query` (Block List, Min: 1, Max: 1) Updated list stream widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--list_stream_definition--request--query)) +- `response_format` (String) Widget response format. Valid values are `event_list`. + + +### Nested Schema for `widget.group_definition.widget.list_stream_definition.request.columns` + +Required: + +- `field` (String) Widget column field. +- `width` (String) Widget column width. Valid values are `auto`, `compact`, `full`. + + + +### Nested Schema for `widget.group_definition.widget.list_stream_definition.request.query` + +Required: + +- `data_source` (String) Source from which to query items to display in the stream. Valid values are `logs_stream`, `audit_stream`, `ci_pipeline_stream`, `ci_test_stream`, `rum_issue_stream`, `apm_issue_stream`, `trace_stream`, `logs_issue_stream`, `logs_pattern_stream`, `logs_transaction_stream`, `event_stream`. + +Optional: + +- `event_size` (String) Size of events displayed in widget. Required if `data_source` is `event_stream`. Valid values are `s`, `l`. +- `indexes` (List of String) List of indexes. +- `query_string` (String) Widget query. +- `sort` (Block List, Max: 1) The facet and order to sort the data, for example: `{"column": "time", "order": "desc"}`. (see [below for nested schema](#nestedblock--widget--group_definition--widget--list_stream_definition--request--query--sort)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.group_definition.widget.list_stream_definition.request.query.sort` + +Required: + +- `column` (String) The facet path for the column. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + + + + + + +### Nested Schema for `widget.group_definition.widget.log_stream_definition` + +Optional: + +- `columns` (List of String) Stringified list of columns to use, for example: `["column1","column2","column3"]`. +- `indexes` (List of String) An array of index names to query in the stream. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `message_display` (String) The number of log lines to display. Valid values are `inline`, `expanded-md`, `expanded-lg`. +- `query` (String) The query to use in the widget. +- `show_date_column` (Boolean) If the date column should be displayed. +- `show_message_column` (Boolean) If the message column should be displayed. +- `sort` (Block List, Max: 1) The facet and order to sort the data, for example: `{"column": "time", "order": "desc"}`. (see [below for nested schema](#nestedblock--widget--group_definition--widget--log_stream_definition--sort)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.group_definition.widget.log_stream_definition.sort` + +Required: + +- `column` (String) The facet path for the column. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.group_definition.widget.manage_status_definition` + +Required: + +- `query` (String) The query to use in the widget. + +Optional: + +- `color_preference` (String) Whether to colorize text or background. Valid values are `background`, `text`. +- `display_format` (String) The display setting to use. Valid values are `counts`, `countsAndList`, `list`. +- `hide_zero_counts` (Boolean) A Boolean indicating whether to hide empty categories. +- `show_last_triggered` (Boolean) A Boolean indicating whether to show when monitors/groups last triggered. +- `show_priority` (Boolean) Whether to show the priorities column. +- `sort` (String) The method to sort the monitors. Valid values are `name`, `group`, `status`, `tags`, `triggered`, `group,asc`, `group,desc`, `name,asc`, `name,desc`, `status,asc`, `status,desc`, `tags,asc`, `tags,desc`, `triggered,asc`, `triggered,desc`, `priority,asc`, `priority,desc`. +- `summary_type` (String) The summary type to use. Valid values are `monitors`, `groups`, `combined`. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + + +### Nested Schema for `widget.group_definition.widget.note_definition` + +Required: + +- `content` (String) The content of the note. + +Optional: + +- `background_color` (String) The background color of the note. +- `font_size` (String) The size of the text. +- `has_padding` (Boolean) Whether to add padding or not. Defaults to `true`. +- `show_tick` (Boolean) Whether to show a tick or not. +- `text_align` (String) The alignment of the widget's text. Valid values are `center`, `left`, `right`. +- `tick_edge` (String) When `tick = true`, a string indicating on which side of the widget the tick should be displayed. Valid values are `bottom`, `left`, `right`, `top`. +- `tick_pos` (String) When `tick = true`, a string with a percent sign indicating the position of the tick, for example: `tick_pos = "50%"` is centered alignment. +- `vertical_align` (String) The vertical alignment for the widget. Valid values are `center`, `top`, `bottom`. + + + +### Nested Schema for `widget.group_definition.widget.query_table_definition` + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--custom_link)) +- `has_search_bar` (String) Controls the display of the search bar. Valid values are `always`, `never`, `auto`. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query`, `apm_stats_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request` + +Optional: + +- `aggregator` (String) The aggregator to use for time aggregation. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. +- `alias` (String) The alias for the column name (defaults to metric name). +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--apm_query)) +- `apm_stats_query` (Block List, Max: 1) (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--apm_stats_query)) +- `cell_display_mode` (List of String) A list of display modes for each table cell. List items one of `number`, `bar`. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background, depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--conditional_formats)) +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--formula)) +- `limit` (Number) The number of lines to show in the table. +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--log_query)) +- `order` (String) The sort order for the rows. Valid values are `asc`, `desc`. +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--security_query)) + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.apm_stats_query` + +Required: + +- `env` (String) The environment name. +- `name` (String) The operation name associated with the service. +- `primary_tag` (String) The organization's host group name and value. +- `row_type` (String) The level of detail for the request. Valid values are `service`, `resource`, `span`. +- `service` (String) The service name. + +Optional: + +- `columns` (Block List) Column properties used by the front end for display. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--apm_stats_query--columns)) +- `resource` (String) The resource name. + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.apm_stats_query.columns` + +Required: + +- `name` (String) The column name. + +Optional: + +- `alias` (String) A user-assigned alias for the column. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--formula--style)) + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--query--slo_query)) + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.query_table_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + + +### Nested Schema for `widget.group_definition.widget.query_value_definition` + +Optional: + +- `autoscale` (Boolean) A Boolean indicating whether to automatically scale the tile. +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--custom_link)) +- `custom_unit` (String) The unit for the value displayed in the widget. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `precision` (Number) The precision to use when displaying the tile. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request)) +- `text_align` (String) The alignment of the widget's text. Valid values are `center`, `left`, `right`. +- `timeseries_background` (Block List, Max: 1) Set a timeseries on the widget background. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--timeseries_background)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request` + +Optional: + +- `aggregator` (String) The aggregator to use for time aggregation. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--apm_query)) +- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--audit_query)) +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--conditional_formats)) +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--formula)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--security_query)) + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.audit_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--audit_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--audit_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--audit_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.audit_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.audit_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--audit_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.audit_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.audit_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--formula--style)) + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--query--slo_query)) + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.timeseries_background` + +Required: + +- `type` (String) Whether the Timeseries is made using an area or bars. Valid values are `bars`, `area`. + +Optional: + +- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--timeseries_background--yaxis)) + + +### Nested Schema for `widget.group_definition.widget.query_value_definition.timeseries_background.yaxis` + +Optional: + +- `include_zero` (Boolean) Always include zero or fit the axis to the data range. +- `label` (String) The label of the axis to display on the graph. +- `max` (String) Specify the maximum value to show on the Y-axis. +- `min` (String) Specify the minimum value to show on the Y-axis. +- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + + + + + +### Nested Schema for `widget.group_definition.widget.run_workflow_definition` + +Required: + +- `workflow_id` (String) Workflow ID + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--run_workflow_definition--custom_link)) +- `input` (Block List) Array of workflow inputs to map to dashboard template variables. (see [below for nested schema](#nestedblock--widget--group_definition--widget--run_workflow_definition--input)) +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.group_definition.widget.run_workflow_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.group_definition.widget.run_workflow_definition.input` + +Required: + +- `name` (String) Name of the workflow input. +- `value` (String) Dashboard template variable. Can be suffixed with `.value` or `.key`. + + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition` + +Optional: + +- `color_by_groups` (List of String) List of groups used for colors. +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--custom_link)) +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List, Max: 1) A nested block describing the request to use when displaying the widget. Exactly one `request` block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). +- `xaxis` (Block List, Max: 1) A nested block describing the X-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--xaxis)) +- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--yaxis)) + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request` + +Optional: + +- `scatterplot_table` (Block List) Scatterplot request containing formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--scatterplot_table)) +- `x` (Block List) The query used for the X-Axis. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query`, `apm_stats_query` or `process_query` is required within the block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x)) +- `y` (Block List) The query used for the Y-Axis. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query`, `apm_stats_query` or `process_query` is required within the block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y)) + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.scatterplot_table` + +Optional: + +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--scatterplot_table--formula)) +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--scatterplot_table--query)) + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.scatterplot_table.formula` + +Required: + +- `dimension` (String) Dimension of the Scatterplot. Valid values are `x`, `y`, `radius`, `color`. +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.scatterplot_table.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--scatterplot_table--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--scatterplot_table--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--scatterplot_table--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--scatterplot_table--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--scatterplot_table--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--scatterplot_table--query--slo_query)) + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.scatterplot_table.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.scatterplot_table.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.scatterplot_table.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--scatterplot_table--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--scatterplot_table--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--scatterplot_table--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.scatterplot_table.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.scatterplot_table.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--scatterplot_table--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.scatterplot_table.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.scatterplot_table.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.scatterplot_table.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.scatterplot_table.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.scatterplot_table.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x` + +Optional: + +- `aggregator` (String) Aggregator used for the request. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--apm_query)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--process_query)) +- `q` (String) The metric query to use for this widget. +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--security_query)) + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y` + +Optional: + +- `aggregator` (String) Aggregator used for the request. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--apm_query)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--process_query)) +- `q` (String) The metric query to use for this widget. +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--security_query)) + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.xaxis` + +Optional: + +- `include_zero` (Boolean) Always include zero or fit the axis to the data range. +- `label` (String) The label of the axis to display on the graph. +- `max` (String) Specify the maximum value to show on the Y-axis. +- `min` (String) Specify the minimum value to show on the Y-axis. +- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + + + +### Nested Schema for `widget.group_definition.widget.scatterplot_definition.yaxis` + +Optional: + +- `include_zero` (Boolean) Always include zero or fit the axis to the data range. +- `label` (String) The label of the axis to display on the graph. +- `max` (String) Specify the maximum value to show on the Y-axis. +- `min` (String) Specify the minimum value to show on the Y-axis. +- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + + + + +### Nested Schema for `widget.group_definition.widget.service_level_objective_definition` + +Required: + +- `slo_id` (String) The ID of the service level objective used by the widget. +- `time_windows` (List of String) A list of time windows to display in the widget. Valid values are `7d`, `30d`, `90d`, `week_to_date`, `previous_week`, `month_to_date`, `previous_month`, `global_time`. +- `view_mode` (String) The view mode for the widget. Valid values are `overall`, `component`, `both`. +- `view_type` (String) The type of view to use when displaying the widget. Only `detail` is supported. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `global_time_target` (String) The global time target of the widget. +- `show_error_budget` (Boolean) Whether to show the error budget or not. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + + +### Nested Schema for `widget.group_definition.widget.servicemap_definition` + +Required: + +- `filters` (List of String) Your environment and primary tag (or `*` if enabled for your account). +- `service` (String) The ID of the service to map. + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--servicemap_definition--custom_link)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.group_definition.widget.servicemap_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + + +### Nested Schema for `widget.group_definition.widget.slo_list_definition` + +Required: + +- `request` (Block List, Min: 1, Max: 1) A nested block describing the request to use when displaying the widget. Exactly one `request` block is allowed. (see [below for nested schema](#nestedblock--widget--group_definition--widget--slo_list_definition--request)) + +Optional: + +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.group_definition.widget.slo_list_definition.request` + +Required: + +- `query` (Block List, Min: 1, Max: 1) Updated SLO List widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--slo_list_definition--request--query)) +- `request_type` (String) The request type for the SLO List request. Valid values are `slo_list`. + + +### Nested Schema for `widget.group_definition.widget.slo_list_definition.request.query` + +Required: + +- `query_string` (String) Widget query. + +Optional: + +- `limit` (Number) Maximum number of results to display in the table. Defaults to `100`. +- `sort` (Block List, Max: 1) The facet and order to sort the data, for example: `{"column": "status.sli", "order": "desc"}`. (see [below for nested schema](#nestedblock--widget--group_definition--widget--slo_list_definition--request--query--sort)) + + +### Nested Schema for `widget.group_definition.widget.slo_list_definition.request.query.sort` + +Required: + +- `column` (String) The facet path for the column. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + + + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition` + +Required: + +- `size` (String) Size of the individual graphs in the split. +- `source_widget_definition` (Block List, Min: 1, Max: 1) The original widget we are splitting on. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition)) +- `split_config` (Block List, Min: 1, Max: 1) Encapsulates all user choices about how to split a graph. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--split_config)) + +Optional: + +- `has_uniform_y_axes` (Boolean) Normalize y axes across graphs. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `title` (String) The title of the widget. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition` + +Optional: + +- `change_definition` (Block List, Max: 1) The definition for a Change widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition)) +- `geomap_definition` (Block List, Max: 1) The definition for a Geomap widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition)) +- `query_table_definition` (Block List, Max: 1) The definition for a Query Table widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition)) +- `query_value_definition` (Block List, Max: 1) The definition for a Query Value widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition)) +- `scatterplot_definition` (Block List, Max: 1) The definition for a Scatterplot widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition)) +- `sunburst_definition` (Block List, Max: 1) The definition for a Sunburst widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition)) +- `timeseries_definition` (Block List, Max: 1) The definition for a Timeseries widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition)) +- `toplist_definition` (Block List, Max: 1) The definition for a Toplist widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition)) +- `treemap_definition` (Block List, Max: 1) The definition for a Treemap widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition` + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--custom_link)) +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple request blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the request block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request` + +Optional: + +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--apm_query)) +- `change_type` (String) Whether to show absolute or relative change. Valid values are `absolute`, `relative`. +- `compare_to` (String) Choose from when to compare current data to. Valid values are `hour_before`, `day_before`, `week_before`, `month_before`. +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--formula)) +- `increase_good` (Boolean) A Boolean indicating whether an increase in the value is good (displayed in green) or not (displayed in red). +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--log_query)) +- `order_by` (String) What to order by. Valid values are `change`, `name`, `present`, `past`. +- `order_dir` (String) Widget sorting method. Valid values are `asc`, `desc`. +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--security_query)) +- `show_present` (Boolean) If set to `true`, displays the current value. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--formula--style)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--query--slo_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition` + +Required: + +- `view` (Block List, Min: 1, Max: 1) The view of the world that the map should render. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--view)) + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--custom_link)) +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `log_query` or `rum_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request)) +- `style` (Block List, Max: 1) The style of the widget graph. One nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--style)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.view` + +Required: + +- `focus` (String) The two-letter ISO code of a country to focus the map on (or `WORLD`). + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request` + +Optional: + +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--formula)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--log_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--rum_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--formula--style)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--slo_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.style` + +Required: + +- `palette` (String) The color palette to apply to the widget. +- `palette_flip` (Boolean) A Boolean indicating whether to flip the palette tones. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition` + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--custom_link)) +- `has_search_bar` (String) Controls the display of the search bar. Valid values are `always`, `never`, `auto`. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query`, `apm_stats_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request` + +Optional: + +- `aggregator` (String) The aggregator to use for time aggregation. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. +- `alias` (String) The alias for the column name (defaults to metric name). +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--apm_query)) +- `apm_stats_query` (Block List, Max: 1) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--apm_stats_query)) +- `cell_display_mode` (List of String) A list of display modes for each table cell. List items one of `number`, `bar`. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background, depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--conditional_formats)) +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--formula)) +- `limit` (Number) The number of lines to show in the table. +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--log_query)) +- `order` (String) The sort order for the rows. Valid values are `asc`, `desc`. +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--security_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.apm_stats_query` + +Required: + +- `env` (String) The environment name. +- `name` (String) The operation name associated with the service. +- `primary_tag` (String) The organization's host group name and value. +- `row_type` (String) The level of detail for the request. Valid values are `service`, `resource`, `span`. +- `service` (String) The service name. + +Optional: + +- `columns` (Block List) Column properties used by the front end for display. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--apm_stats_query--columns)) +- `resource` (String) The resource name. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.apm_stats_query.columns` + +Required: + +- `name` (String) The column name. + +Optional: + +- `alias` (String) A user-assigned alias for the column. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--formula--style)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--slo_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition` + +Optional: + +- `autoscale` (Boolean) A Boolean indicating whether to automatically scale the tile. +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--custom_link)) +- `custom_unit` (String) The unit for the value displayed in the widget. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `precision` (Number) The precision to use when displaying the tile. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request)) +- `text_align` (String) The alignment of the widget's text. Valid values are `center`, `left`, `right`. +- `timeseries_background` (Block List, Max: 1) Set a timeseries on the widget background. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--timeseries_background)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request` + +Optional: + +- `aggregator` (String) The aggregator to use for time aggregation. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--apm_query)) +- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--audit_query)) +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--conditional_formats)) +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--formula)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--security_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.audit_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--audit_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--audit_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--audit_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.audit_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.audit_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--audit_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.audit_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.audit_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--formula--style)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--slo_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.timeseries_background` + +Required: + +- `type` (String) Whether the Timeseries is made using an area or bars. Valid values are `bars`, `area`. + +Optional: + +- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--timeseries_background--yaxis)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.timeseries_background.yaxis` + +Optional: + +- `include_zero` (Boolean) Always include zero or fit the axis to the data range. +- `label` (String) The label of the axis to display on the graph. +- `max` (String) Specify the maximum value to show on the Y-axis. +- `min` (String) Specify the minimum value to show on the Y-axis. +- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition` + +Optional: + +- `color_by_groups` (List of String) List of groups used for colors. +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--custom_link)) +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List, Max: 1) A nested block describing the request to use when displaying the widget. Exactly one `request` block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). +- `xaxis` (Block List, Max: 1) A nested block describing the X-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--xaxis)) +- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--yaxis)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request` + +Optional: + +- `scatterplot_table` (Block List) Scatterplot request containing formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table)) +- `x` (Block List) The query used for the X-Axis. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query`, `apm_stats_query` or `process_query` is required within the block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x)) +- `y` (Block List) The query used for the Y-Axis. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query`, `apm_stats_query` or `process_query` is required within the block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table` + +Optional: + +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--formula)) +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.formula` + +Required: + +- `dimension` (String) Dimension of the Scatterplot. Valid values are `x`, `y`, `radius`, `color`. +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--slo_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x` + +Optional: + +- `aggregator` (String) Aggregator used for the request. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--apm_query)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--process_query)) +- `q` (String) The metric query to use for this widget. +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--security_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y` + +Optional: + +- `aggregator` (String) Aggregator used for the request. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--apm_query)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--process_query)) +- `q` (String) The metric query to use for this widget. +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--security_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.xaxis` + +Optional: + +- `include_zero` (Boolean) Always include zero or fit the axis to the data range. +- `label` (String) The label of the axis to display on the graph. +- `max` (String) Specify the maximum value to show on the Y-axis. +- `min` (String) Specify the minimum value to show on the Y-axis. +- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.yaxis` + +Optional: + +- `include_zero` (Boolean) Always include zero or fit the axis to the data range. +- `label` (String) The label of the axis to display on the graph. +- `max` (String) Specify the maximum value to show on the Y-axis. +- `min` (String) Specify the minimum value to show on the Y-axis. +- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition` + +Optional: + +- `custom_link` (Block List) Nested block describing a custom link. Multiple `custom_link` blocks are allowed with the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--custom_link)) +- `hide_total` (Boolean) Whether or not to show the total value in the widget. +- `legend_inline` (Block List, Max: 1) Used to configure the inline legend. Cannot be used in conjunction with legend_table. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--legend_inline)) +- `legend_table` (Block List, Max: 1) Used to configure the table legend. Cannot be used in conjunction with legend_inline. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--legend_table)) +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List) Nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed with the structure below (exactly one of `q`, `log_query` or `rum_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. One of `left`, `center`, or `right`. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title. Default is 16. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.legend_inline` + +Required: + +- `type` (String) The type of legend (inline or automatic). Valid values are `inline`, `automatic`. + +Optional: + +- `hide_percent` (Boolean) Whether to hide the percentages of the groups. +- `hide_value` (Boolean) Whether to hide the values of the groups. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.legend_table` + +Required: + +- `type` (String) The type of legend (table or none). Valid values are `table`, `none`. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request` + +Optional: + +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--apm_query)) +- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--audit_query)) +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--formula)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--log_query)) +- `network_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--network_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--security_query)) +- `style` (Block List, Max: 1) Define style for the widget's request. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--style)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.audit_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--audit_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--audit_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--audit_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.audit_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.audit_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--audit_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.audit_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.audit_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--formula--style)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.network_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--network_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--network_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--network_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.network_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.network_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--network_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.network_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.network_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--slo_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.style` + +Optional: + +- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. + + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition` + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--custom_link)) +- `event` (Block List) The definition of the event to overlay on the graph. Multiple `event` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--event)) +- `legend_columns` (Set of String) A list of columns to display in the legend. Valid values are `value`, `avg`, `sum`, `min`, `max`. +- `legend_layout` (String) The layout of the legend displayed in the widget. Valid values are `auto`, `horizontal`, `vertical`. +- `legend_size` (String) The size of the legend displayed in the widget. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `marker` (Block List) A nested block describing the marker to use when displaying the widget. The structure of this block is described below. Multiple `marker` blocks are allowed within a given `tile_def` block. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--marker)) +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `network_query`, `security_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request)) +- `right_yaxis` (Block List, Max: 1) A nested block describing the right Y-Axis Controls. See the `on_right_yaxis` property for which request will use this axis. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--right_yaxis)) +- `show_legend` (Boolean) Whether or not to show the legend on this widget. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). +- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--yaxis)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.event` + +Required: + +- `q` (String) The event query to use in the widget. + +Optional: + +- `tags_execution` (String) The execution method for multi-value filters. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.marker` + +Required: + +- `value` (String) A mathematical expression describing the marker, for example: `y > 1`, `-5 < y < 0`, `y = 19`. + +Optional: + +- `display_type` (String) How the marker lines are displayed, options are one of {`error`, `warning`, `info`, `ok`} combined with one of {`dashed`, `solid`, `bold`}. Example: `error dashed`. +- `label` (String) A label for the line or range. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request` + +Optional: + +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--apm_query)) +- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--audit_query)) +- `display_type` (String) How to display the marker lines. Valid values are `area`, `bars`, `line`, `overlay`. +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--formula)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--log_query)) +- `metadata` (Block List) Used to define expression aliases. Multiple `metadata` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--metadata)) +- `network_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--network_query)) +- `on_right_yaxis` (Boolean) A Boolean indicating whether the request uses the right or left Y-Axis. +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--security_query)) +- `style` (Block List, Max: 1) The style of the widget graph. Exactly one `style` block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--style)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.audit_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--audit_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--audit_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--audit_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.audit_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.audit_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--audit_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.audit_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.audit_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--formula--style)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.metadata` + +Required: + +- `expression` (String) The expression name. + +Optional: + +- `alias_name` (String) The expression alias. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.network_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--network_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--network_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--network_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.network_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.network_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--network_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.network_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.network_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--slo_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.style` + +Optional: + +- `line_type` (String) The type of lines displayed. Valid values are `dashed`, `dotted`, `solid`. +- `line_width` (String) The width of line displayed. Valid values are `normal`, `thick`, `thin`. +- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.right_yaxis` + +Optional: + +- `include_zero` (Boolean) Always include zero or fit the axis to the data range. +- `label` (String) The label of the axis to display on the graph. +- `max` (String) Specify the maximum value to show on the Y-axis. +- `min` (String) Specify the minimum value to show on the Y-axis. +- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.yaxis` + +Optional: + +- `include_zero` (Boolean) Always include zero or fit the axis to the data range. +- `label` (String) The label of the axis to display on the graph. +- `max` (String) Specify the maximum value to show on the Y-axis. +- `min` (String) Specify the minimum value to show on the Y-axis. +- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition` + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--custom_link)) +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request` + +Optional: + +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--apm_query)) +- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--audit_query)) +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background, depending on a rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--conditional_formats)) +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--formula)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--security_query)) +- `style` (Block List, Max: 1) Define request for the widget's style. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--style)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.audit_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--audit_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--audit_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--audit_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.audit_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.audit_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--audit_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.audit_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.audit_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--formula--style)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--slo_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.style` + +Optional: + +- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. + + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition` + +Optional: + +- `request` (Block List) Nested block describing the request to use when displaying the widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request)) +- `title` (String) The title of the widget. + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request` + +Optional: + +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request--formula)) +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request--formula--style)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--slo_query)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.split_config` + +Required: + +- `sort` (Block List, Min: 1, Max: 1) Controls the order in which graphs appear in the split. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--split_config--sort)) +- `split_dimensions` (Block List, Min: 1, Max: 1) The property by which the graph splits (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--split_config--split_dimensions)) + +Optional: + +- `limit` (Number) Maximum number of graphs to display in the widget. +- `static_splits` (Block List, Max: 100) The property by which the graph splits (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--split_config--static_splits)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.split_config.sort` + +Required: + +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `compute` (Block List, Max: 1) Defines the metric and aggregation used as the sort value (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--split_config--sort--compute)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.split_config.sort.compute` + +Required: + +- `metric` (String) The metric to use for sorting graphs. + +Optional: + +- `aggregation` (String) How to aggregate the sort metric for the purposes of ordering. + + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.split_config.split_dimensions` + +Required: + +- `one_graph_per` (String) The system interprets this attribute differently depending on the data source of the query being split. For metrics, it's a tag. For the events platform, it's an attribute or tag. + + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.split_config.static_splits` + +Required: + +- `split_vector` (Block List, Min: 1) The split graph list contains a graph for each value of the split dimension. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--split_config--static_splits--split_vector)) + + +### Nested Schema for `widget.group_definition.widget.split_graph_definition.split_config.static_splits.split_vector` + +Required: + +- `tag_key` (String) +- `tag_values` (List of String) + + + + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition` + +Optional: + +- `custom_link` (Block List) Nested block describing a custom link. Multiple `custom_link` blocks are allowed with the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--custom_link)) +- `hide_total` (Boolean) Whether or not to show the total value in the widget. +- `legend_inline` (Block List, Max: 1) Used to configure the inline legend. Cannot be used in conjunction with legend_table. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--legend_inline)) +- `legend_table` (Block List, Max: 1) Used to configure the table legend. Cannot be used in conjunction with legend_inline. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--legend_table)) +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List) Nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed with the structure below (exactly one of `q`, `log_query` or `rum_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. One of `left`, `center`, or `right`. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title. Default is 16. + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.legend_inline` + +Required: + +- `type` (String) The type of legend (inline or automatic). Valid values are `inline`, `automatic`. + +Optional: + +- `hide_percent` (Boolean) Whether to hide the percentages of the groups. +- `hide_value` (Boolean) Whether to hide the values of the groups. + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.legend_table` + +Required: + +- `type` (String) The type of legend (table or none). Valid values are `table`, `none`. + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request` + +Optional: + +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--apm_query)) +- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--audit_query)) +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--formula)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--log_query)) +- `network_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--network_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--security_query)) +- `style` (Block List, Max: 1) Define style for the widget's request. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--style)) + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.audit_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--audit_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--audit_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--audit_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.audit_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.audit_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--audit_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.audit_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.audit_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--formula--style)) + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.network_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--network_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--network_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--network_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.network_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.network_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--network_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.network_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.network_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--query--slo_query)) + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.style` + +Optional: + +- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. + + + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition` + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--custom_link)) +- `event` (Block List) The definition of the event to overlay on the graph. Multiple `event` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--event)) +- `legend_columns` (Set of String) A list of columns to display in the legend. Valid values are `value`, `avg`, `sum`, `min`, `max`. +- `legend_layout` (String) The layout of the legend displayed in the widget. Valid values are `auto`, `horizontal`, `vertical`. +- `legend_size` (String) The size of the legend displayed in the widget. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `marker` (Block List) A nested block describing the marker to use when displaying the widget. The structure of this block is described below. Multiple `marker` blocks are allowed within a given `tile_def` block. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--marker)) +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `network_query`, `security_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request)) +- `right_yaxis` (Block List, Max: 1) A nested block describing the right Y-Axis Controls. See the `on_right_yaxis` property for which request will use this axis. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--right_yaxis)) +- `show_legend` (Boolean) Whether or not to show the legend on this widget. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). +- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--yaxis)) + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.event` + +Required: + +- `q` (String) The event query to use in the widget. + +Optional: + +- `tags_execution` (String) The execution method for multi-value filters. + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.marker` + +Required: + +- `value` (String) A mathematical expression describing the marker, for example: `y > 1`, `-5 < y < 0`, `y = 19`. + +Optional: + +- `display_type` (String) How the marker lines are displayed, options are one of {`error`, `warning`, `info`, `ok`} combined with one of {`dashed`, `solid`, `bold`}. Example: `error dashed`. +- `label` (String) A label for the line or range. + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request` + +Optional: + +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--apm_query)) +- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--audit_query)) +- `display_type` (String) How to display the marker lines. Valid values are `area`, `bars`, `line`, `overlay`. +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--formula)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--log_query)) +- `metadata` (Block List) Used to define expression aliases. Multiple `metadata` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--metadata)) +- `network_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--network_query)) +- `on_right_yaxis` (Boolean) A Boolean indicating whether the request uses the right or left Y-Axis. +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--security_query)) +- `style` (Block List, Max: 1) The style of the widget graph. Exactly one `style` block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--style)) + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.audit_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--audit_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--audit_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--audit_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.audit_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.audit_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--audit_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.audit_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.audit_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--formula--style)) + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.metadata` + +Required: + +- `expression` (String) The expression name. + +Optional: + +- `alias_name` (String) The expression alias. + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.network_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--network_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--network_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--network_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.network_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.network_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--network_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.network_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.network_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--query--slo_query)) + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.style` + +Optional: + +- `line_type` (String) The type of lines displayed. Valid values are `dashed`, `dotted`, `solid`. +- `line_width` (String) The width of line displayed. Valid values are `normal`, `thick`, `thin`. +- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. + + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.right_yaxis` + +Optional: + +- `include_zero` (Boolean) Always include zero or fit the axis to the data range. +- `label` (String) The label of the axis to display on the graph. +- `max` (String) Specify the maximum value to show on the Y-axis. +- `min` (String) Specify the minimum value to show on the Y-axis. +- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + + + +### Nested Schema for `widget.group_definition.widget.timeseries_definition.yaxis` + +Optional: + +- `include_zero` (Boolean) Always include zero or fit the axis to the data range. +- `label` (String) The label of the axis to display on the graph. +- `max` (String) Specify the maximum value to show on the Y-axis. +- `min` (String) Specify the minimum value to show on the Y-axis. +- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + + + + +### Nested Schema for `widget.group_definition.widget.toplist_definition` + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--custom_link)) +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request` + +Optional: + +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--apm_query)) +- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--audit_query)) +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background, depending on a rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--conditional_formats)) +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--formula)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--security_query)) +- `style` (Block List, Max: 1) Define request for the widget's style. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--style)) + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.audit_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--audit_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--audit_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--audit_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.audit_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.audit_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--audit_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.audit_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.audit_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--formula--style)) + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--query--slo_query)) + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.group_definition.widget.toplist_definition.request.style` + +Optional: + +- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. + + + + + +### Nested Schema for `widget.group_definition.widget.topology_map_definition` + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--topology_map_definition--custom_link)) +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple request blocks are allowed using the structure below (`query` and `request_type` are required within the request). (see [below for nested schema](#nestedblock--widget--group_definition--widget--topology_map_definition--request)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.group_definition.widget.topology_map_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.group_definition.widget.topology_map_definition.request` + +Required: + +- `query` (Block List, Min: 1) The query for a Topology request. (see [below for nested schema](#nestedblock--widget--group_definition--widget--topology_map_definition--request--query)) +- `request_type` (String) The request type for the Topology request ('topology'). Valid values are `topology`. + + +### Nested Schema for `widget.group_definition.widget.topology_map_definition.request.query` + +Required: + +- `data_source` (String) The data source for the Topology request ('service_map' or 'data_streams'). Valid values are `data_streams`, `service_map`. +- `filters` (List of String) Your environment and primary tag (or `*` if enabled for your account). +- `service` (String) The ID of the service to map. + + + + + +### Nested Schema for `widget.group_definition.widget.trace_service_definition` + +Required: + +- `env` (String) APM environment. +- `service` (String) APM service. +- `span_name` (String) APM span name + +Optional: + +- `display_format` (String) The number of columns to display. Valid values are `one_column`, `two_column`, `three_column`. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `show_breakdown` (Boolean) Whether to show the latency breakdown or not. +- `show_distribution` (Boolean) Whether to show the latency distribution or not. +- `show_errors` (Boolean) Whether to show the error metrics or not. +- `show_hits` (Boolean) Whether to show the hits metrics or not +- `show_latency` (Boolean) Whether to show the latency metrics or not. +- `show_resource_list` (Boolean) Whether to show the resource list or not. +- `size_format` (String) The size of the widget. Valid values are `small`, `medium`, `large`. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + + +### Nested Schema for `widget.group_definition.widget.treemap_definition` + +Optional: + +- `request` (Block List) Nested block describing the request to use when displaying the widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request)) +- `title` (String) The title of the widget. + + +### Nested Schema for `widget.group_definition.widget.treemap_definition.request` + +Optional: + +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request--formula)) +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request--query)) + + +### Nested Schema for `widget.group_definition.widget.treemap_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request--formula--style)) + + +### Nested Schema for `widget.group_definition.widget.treemap_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.group_definition.widget.treemap_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.group_definition.widget.treemap_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.group_definition.widget.treemap_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request--query--slo_query)) + + +### Nested Schema for `widget.group_definition.widget.treemap_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.group_definition.widget.treemap_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.group_definition.widget.treemap_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.group_definition.widget.treemap_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.group_definition.widget.treemap_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.group_definition.widget.treemap_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.group_definition.widget.treemap_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.group_definition.widget.treemap_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.group_definition.widget.treemap_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.group_definition.widget.treemap_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + + + +### Nested Schema for `widget.group_definition.widget.widget_layout` + +Required: + +- `height` (Number) The height of the widget. +- `width` (Number) The width of the widget. +- `x` (Number) The position of the widget on the x (horizontal) axis. Should be greater than or equal to 0. +- `y` (Number) The position of the widget on the y (vertical) axis. Should be greater than or equal to 0. + +Optional: + +- `is_column_break` (Boolean) Whether the widget should be the first one on the second column in high density or not. Only for the new dashboard layout and only one widget in the dashboard should have this property set to `true`. + + + + + +### Nested Schema for `widget.heatmap_definition` + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--custom_link)) +- `event` (Block List) The definition of the event to overlay on the graph. Multiple `event` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--event)) +- `legend_size` (String) The size of the legend displayed in the widget. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the request block). (see [below for nested schema](#nestedblock--widget--heatmap_definition--request)) +- `show_legend` (Boolean) Whether or not to show the legend on this widget. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). +- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--yaxis)) + + +### Nested Schema for `widget.heatmap_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.heatmap_definition.event` + +Required: + +- `q` (String) The event query to use in the widget. + +Optional: + +- `tags_execution` (String) The execution method for multi-value filters. + + + +### Nested Schema for `widget.heatmap_definition.request` + +Optional: + +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--apm_query)) +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--formula)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--security_query)) +- `style` (Block List, Max: 1) The style of the widget graph. One nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--style)) + + +### Nested Schema for `widget.heatmap_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.heatmap_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.heatmap_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.heatmap_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.heatmap_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.heatmap_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--formula--style)) + + +### Nested Schema for `widget.heatmap_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.heatmap_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.heatmap_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.heatmap_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.heatmap_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.heatmap_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.heatmap_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.heatmap_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.heatmap_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.heatmap_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--slo_query)) + + +### Nested Schema for `widget.heatmap_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.heatmap_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.heatmap_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.heatmap_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.heatmap_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.heatmap_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.heatmap_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.heatmap_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.heatmap_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.heatmap_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.heatmap_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.heatmap_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.heatmap_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.heatmap_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.heatmap_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.heatmap_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.heatmap_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.heatmap_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.heatmap_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.heatmap_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.heatmap_definition.request.style` + +Optional: + +- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. + + + + +### Nested Schema for `widget.heatmap_definition.yaxis` + +Optional: + +- `include_zero` (Boolean) Always include zero or fit the axis to the data range. +- `label` (String) The label of the axis to display on the graph. +- `max` (String) Specify the maximum value to show on the Y-axis. +- `min` (String) Specify the minimum value to show on the Y-axis. +- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + + + + +### Nested Schema for `widget.hostmap_definition` + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--custom_link)) +- `group` (List of String) The list of tags to group nodes by. +- `no_group_hosts` (Boolean) A Boolean indicating whether to show ungrouped nodes. +- `no_metric_hosts` (Boolean) A Boolean indicating whether to show nodes with no metrics. +- `node_type` (String) The type of node used. Valid values are `host`, `container`. +- `request` (Block List, Max: 1) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request)) +- `scope` (List of String) The list of tags to filter nodes by. +- `style` (Block List, Max: 1) The style of the widget graph. One nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--style)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.hostmap_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.hostmap_definition.request` + +Optional: + +- `fill` (Block List) The query used to fill the map. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the request block). (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill)) +- `size` (Block List) The query used to size the map. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the request block). (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size)) + + +### Nested Schema for `widget.hostmap_definition.request.fill` + +Optional: + +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--apm_query)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--process_query)) +- `q` (String) The metric query to use for this widget. +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--security_query)) + + +### Nested Schema for `widget.hostmap_definition.request.fill.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.hostmap_definition.request.fill.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.hostmap_definition.request.fill.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.hostmap_definition.request.fill.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.hostmap_definition.request.fill.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.hostmap_definition.request.fill.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.hostmap_definition.request.fill.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.hostmap_definition.request.fill.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.hostmap_definition.request.fill.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.hostmap_definition.request.fill.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.hostmap_definition.request.fill.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.hostmap_definition.request.fill.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.hostmap_definition.request.fill.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.hostmap_definition.request.fill.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.hostmap_definition.request.fill.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.hostmap_definition.request.fill.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.hostmap_definition.request.fill.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.hostmap_definition.request.fill.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.hostmap_definition.request.fill.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.hostmap_definition.request.fill.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.hostmap_definition.request.fill.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + +### Nested Schema for `widget.hostmap_definition.request.size` + +Optional: + +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--apm_query)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--process_query)) +- `q` (String) The metric query to use for this widget. +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--security_query)) + + +### Nested Schema for `widget.hostmap_definition.request.size.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.hostmap_definition.request.size.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.hostmap_definition.request.size.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.hostmap_definition.request.size.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.hostmap_definition.request.size.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.hostmap_definition.request.size.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.hostmap_definition.request.size.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.hostmap_definition.request.size.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.hostmap_definition.request.size.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.hostmap_definition.request.size.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.hostmap_definition.request.size.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.hostmap_definition.request.size.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.hostmap_definition.request.size.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.hostmap_definition.request.size.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.hostmap_definition.request.size.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.hostmap_definition.request.size.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.hostmap_definition.request.size.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.hostmap_definition.request.size.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.hostmap_definition.request.size.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.hostmap_definition.request.size.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.hostmap_definition.request.size.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + + +### Nested Schema for `widget.hostmap_definition.style` + +Optional: + +- `fill_max` (String) The max value to use to color the map. +- `fill_min` (String) The min value to use to color the map. +- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. +- `palette_flip` (Boolean) A Boolean indicating whether to flip the palette tones. + + + + +### Nested Schema for `widget.iframe_definition` + +Required: + +- `url` (String) The URL to use as a data source for the widget. + + + +### Nested Schema for `widget.image_definition` + +Required: + +- `url` (String) The URL to use as a data source for the widget. + +Optional: + +- `has_background` (Boolean) Whether to display a background or not. Defaults to `true`. +- `has_border` (Boolean) Whether to display a border or not. Defaults to `true`. +- `horizontal_align` (String) The horizontal alignment for the widget. Valid values are `center`, `left`, `right`. +- `margin` (String) The margins to use around the image. Note: `small` and `large` values are deprecated. Valid values are `sm`, `md`, `lg`, `small`, `large`. +- `sizing` (String) The preferred method to adapt the dimensions of the image. The values are based on the image `object-fit` CSS properties. Note: `zoom`, `fit` and `center` values are deprecated. Valid values are `fill`, `contain`, `cover`, `none`, `scale-down`, `zoom`, `fit`, `center`. +- `url_dark_theme` (String) The URL in dark mode to use as a data source for the widget. +- `vertical_align` (String) The vertical alignment for the widget. Valid values are `center`, `top`, `bottom`. + + + +### Nested Schema for `widget.list_stream_definition` + +Required: + +- `request` (Block List, Min: 1) Nested block describing the requests to use when displaying the widget. Multiple `request` blocks are allowed with the structure below. (see [below for nested schema](#nestedblock--widget--list_stream_definition--request)) + +Optional: + +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title. Default is 16. + + +### Nested Schema for `widget.list_stream_definition.request` + +Required: + +- `columns` (Block List, Min: 1) Widget columns. (see [below for nested schema](#nestedblock--widget--list_stream_definition--request--columns)) +- `query` (Block List, Min: 1, Max: 1) Updated list stream widget. (see [below for nested schema](#nestedblock--widget--list_stream_definition--request--query)) +- `response_format` (String) Widget response format. Valid values are `event_list`. + + +### Nested Schema for `widget.list_stream_definition.request.columns` + +Required: + +- `field` (String) Widget column field. +- `width` (String) Widget column width. Valid values are `auto`, `compact`, `full`. + + + +### Nested Schema for `widget.list_stream_definition.request.query` + +Required: + +- `data_source` (String) Source from which to query items to display in the stream. Valid values are `logs_stream`, `audit_stream`, `ci_pipeline_stream`, `ci_test_stream`, `rum_issue_stream`, `apm_issue_stream`, `trace_stream`, `logs_issue_stream`, `logs_pattern_stream`, `logs_transaction_stream`, `event_stream`. + +Optional: + +- `event_size` (String) Size of events displayed in widget. Required if `data_source` is `event_stream`. Valid values are `s`, `l`. +- `indexes` (List of String) List of indexes. +- `query_string` (String) Widget query. +- `sort` (Block List, Max: 1) The facet and order to sort the data, for example: `{"column": "time", "order": "desc"}`. (see [below for nested schema](#nestedblock--widget--list_stream_definition--request--query--sort)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.list_stream_definition.request.query.sort` + +Required: + +- `column` (String) The facet path for the column. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + + + + + + +### Nested Schema for `widget.log_stream_definition` + +Optional: + +- `columns` (List of String) Stringified list of columns to use, for example: `["column1","column2","column3"]`. +- `indexes` (List of String) An array of index names to query in the stream. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `message_display` (String) The number of log lines to display. Valid values are `inline`, `expanded-md`, `expanded-lg`. +- `query` (String) The query to use in the widget. +- `show_date_column` (Boolean) If the date column should be displayed. +- `show_message_column` (Boolean) If the message column should be displayed. +- `sort` (Block List, Max: 1) The facet and order to sort the data, for example: `{"column": "time", "order": "desc"}`. (see [below for nested schema](#nestedblock--widget--log_stream_definition--sort)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.log_stream_definition.sort` + +Required: + +- `column` (String) The facet path for the column. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.manage_status_definition` + +Required: + +- `query` (String) The query to use in the widget. + +Optional: + +- `color_preference` (String) Whether to colorize text or background. Valid values are `background`, `text`. +- `display_format` (String) The display setting to use. Valid values are `counts`, `countsAndList`, `list`. +- `hide_zero_counts` (Boolean) A Boolean indicating whether to hide empty categories. +- `show_last_triggered` (Boolean) A Boolean indicating whether to show when monitors/groups last triggered. +- `show_priority` (Boolean) Whether to show the priorities column. +- `sort` (String) The method to sort the monitors. Valid values are `name`, `group`, `status`, `tags`, `triggered`, `group,asc`, `group,desc`, `name,asc`, `name,desc`, `status,asc`, `status,desc`, `tags,asc`, `tags,desc`, `triggered,asc`, `triggered,desc`, `priority,asc`, `priority,desc`. +- `summary_type` (String) The summary type to use. Valid values are `monitors`, `groups`, `combined`. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + + +### Nested Schema for `widget.note_definition` + +Required: + +- `content` (String) The content of the note. + +Optional: + +- `background_color` (String) The background color of the note. +- `font_size` (String) The size of the text. +- `has_padding` (Boolean) Whether to add padding or not. Defaults to `true`. +- `show_tick` (Boolean) Whether to show a tick or not. +- `text_align` (String) The alignment of the widget's text. Valid values are `center`, `left`, `right`. +- `tick_edge` (String) When `tick = true`, a string indicating on which side of the widget the tick should be displayed. Valid values are `bottom`, `left`, `right`, `top`. +- `tick_pos` (String) When `tick = true`, a string with a percent sign indicating the position of the tick, for example: `tick_pos = "50%"` is centered alignment. +- `vertical_align` (String) The vertical alignment for the widget. Valid values are `center`, `top`, `bottom`. + + + +### Nested Schema for `widget.query_table_definition` + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--custom_link)) +- `has_search_bar` (String) Controls the display of the search bar. Valid values are `always`, `never`, `auto`. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query`, `apm_stats_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--query_table_definition--request)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.query_table_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.query_table_definition.request` + +Optional: + +- `aggregator` (String) The aggregator to use for time aggregation. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. +- `alias` (String) The alias for the column name (defaults to metric name). +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--apm_query)) +- `apm_stats_query` (Block List, Max: 1) (see [below for nested schema](#nestedblock--widget--query_table_definition--request--apm_stats_query)) +- `cell_display_mode` (List of String) A list of display modes for each table cell. List items one of `number`, `bar`. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background, depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--conditional_formats)) +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--query_table_definition--request--formula)) +- `limit` (Number) The number of lines to show in the table. +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--log_query)) +- `order` (String) The sort order for the rows. Valid values are `asc`, `desc`. +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--security_query)) + + +### Nested Schema for `widget.query_table_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.query_table_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.query_table_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.query_table_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.query_table_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.query_table_definition.request.apm_stats_query` + +Required: + +- `env` (String) The environment name. +- `name` (String) The operation name associated with the service. +- `primary_tag` (String) The organization's host group name and value. +- `row_type` (String) The level of detail for the request. Valid values are `service`, `resource`, `span`. +- `service` (String) The service name. + +Optional: + +- `columns` (Block List) Column properties used by the front end for display. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--apm_stats_query--columns)) +- `resource` (String) The resource name. + + +### Nested Schema for `widget.query_table_definition.request.apm_stats_query.columns` + +Required: + +- `name` (String) The column name. + +Optional: + +- `alias` (String) A user-assigned alias for the column. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.query_table_definition.request.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.query_table_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--formula--style)) + + +### Nested Schema for `widget.query_table_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.query_table_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.query_table_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.query_table_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.query_table_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.query_table_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.query_table_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.query_table_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.query_table_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.query_table_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query--slo_query)) + + +### Nested Schema for `widget.query_table_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.query_table_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.query_table_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.query_table_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.query_table_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.query_table_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.query_table_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.query_table_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.query_table_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.query_table_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.query_table_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.query_table_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.query_table_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.query_table_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.query_table_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.query_table_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.query_table_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.query_table_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.query_table_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.query_table_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + + +### Nested Schema for `widget.query_value_definition` + +Optional: + +- `autoscale` (Boolean) A Boolean indicating whether to automatically scale the tile. +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--custom_link)) +- `custom_unit` (String) The unit for the value displayed in the widget. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `precision` (Number) The precision to use when displaying the tile. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--query_value_definition--request)) +- `text_align` (String) The alignment of the widget's text. Valid values are `center`, `left`, `right`. +- `timeseries_background` (Block List, Max: 1) Set a timeseries on the widget background. (see [below for nested schema](#nestedblock--widget--query_value_definition--timeseries_background)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.query_value_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.query_value_definition.request` + +Optional: + +- `aggregator` (String) The aggregator to use for time aggregation. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--apm_query)) +- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--audit_query)) +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--conditional_formats)) +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--query_value_definition--request--formula)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--security_query)) + + +### Nested Schema for `widget.query_value_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.query_value_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.query_value_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.query_value_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.query_value_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.query_value_definition.request.audit_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--audit_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--audit_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--audit_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.query_value_definition.request.audit_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.query_value_definition.request.audit_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--audit_query--group_by--sort_query)) + + +### Nested Schema for `widget.query_value_definition.request.audit_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.query_value_definition.request.audit_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.query_value_definition.request.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.query_value_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--formula--style)) + + +### Nested Schema for `widget.query_value_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.query_value_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.query_value_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.query_value_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.query_value_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.query_value_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.query_value_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.query_value_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.query_value_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.query_value_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--slo_query)) + + +### Nested Schema for `widget.query_value_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.query_value_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.query_value_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.query_value_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.query_value_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.query_value_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.query_value_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.query_value_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.query_value_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.query_value_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.query_value_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.query_value_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.query_value_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.query_value_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.query_value_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.query_value_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.query_value_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.query_value_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.query_value_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.query_value_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + +### Nested Schema for `widget.query_value_definition.timeseries_background` + +Required: + +- `type` (String) Whether the Timeseries is made using an area or bars. Valid values are `bars`, `area`. + +Optional: + +- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--timeseries_background--yaxis)) + + +### Nested Schema for `widget.query_value_definition.timeseries_background.yaxis` + +Optional: + +- `include_zero` (Boolean) Always include zero or fit the axis to the data range. +- `label` (String) The label of the axis to display on the graph. +- `max` (String) Specify the maximum value to show on the Y-axis. +- `min` (String) Specify the minimum value to show on the Y-axis. +- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + + + + + +### Nested Schema for `widget.run_workflow_definition` + +Required: + +- `workflow_id` (String) Workflow ID + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--run_workflow_definition--custom_link)) +- `input` (Block List) Array of workflow inputs to map to dashboard template variables. (see [below for nested schema](#nestedblock--widget--run_workflow_definition--input)) +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.run_workflow_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.run_workflow_definition.input` + +Required: + +- `name` (String) Name of the workflow input. +- `value` (String) Dashboard template variable. Can be suffixed with `.value` or `.key`. + + + + +### Nested Schema for `widget.scatterplot_definition` + +Optional: + +- `color_by_groups` (List of String) List of groups used for colors. +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--custom_link)) +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List, Max: 1) A nested block describing the request to use when displaying the widget. Exactly one `request` block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). +- `xaxis` (Block List, Max: 1) A nested block describing the X-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--xaxis)) +- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--yaxis)) + + +### Nested Schema for `widget.scatterplot_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.scatterplot_definition.request` + +Optional: + +- `scatterplot_table` (Block List) Scatterplot request containing formulas and functions. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table)) +- `x` (Block List) The query used for the X-Axis. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query`, `apm_stats_query` or `process_query` is required within the block). (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x)) +- `y` (Block List) The query used for the Y-Axis. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query`, `apm_stats_query` or `process_query` is required within the block). (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y)) + + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table` + +Optional: + +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--formula)) +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query)) + + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.formula` + +Required: + +- `dimension` (String) Dimension of the Scatterplot. Valid values are `x`, `y`, `radius`, `color`. +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. + + + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--slo_query)) + + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + + +### Nested Schema for `widget.scatterplot_definition.request.x` + +Optional: + +- `aggregator` (String) Aggregator used for the request. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--apm_query)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--process_query)) +- `q` (String) The metric query to use for this widget. +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--security_query)) + + +### Nested Schema for `widget.scatterplot_definition.request.x.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.scatterplot_definition.request.x.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.scatterplot_definition.request.x.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.scatterplot_definition.request.x.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.scatterplot_definition.request.x.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.scatterplot_definition.request.x.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.scatterplot_definition.request.x.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.scatterplot_definition.request.x.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.scatterplot_definition.request.x.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.scatterplot_definition.request.x.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.scatterplot_definition.request.x.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.scatterplot_definition.request.x.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.scatterplot_definition.request.x.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.scatterplot_definition.request.x.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.scatterplot_definition.request.x.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.scatterplot_definition.request.x.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.scatterplot_definition.request.x.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.scatterplot_definition.request.x.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.scatterplot_definition.request.x.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.scatterplot_definition.request.x.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.scatterplot_definition.request.x.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + +### Nested Schema for `widget.scatterplot_definition.request.y` + +Optional: + +- `aggregator` (String) Aggregator used for the request. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--apm_query)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--process_query)) +- `q` (String) The metric query to use for this widget. +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--security_query)) + + +### Nested Schema for `widget.scatterplot_definition.request.y.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.scatterplot_definition.request.y.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.scatterplot_definition.request.y.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.scatterplot_definition.request.y.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.scatterplot_definition.request.y.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.scatterplot_definition.request.y.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.scatterplot_definition.request.y.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.scatterplot_definition.request.y.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.scatterplot_definition.request.y.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.scatterplot_definition.request.y.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.scatterplot_definition.request.y.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.scatterplot_definition.request.y.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.scatterplot_definition.request.y.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.scatterplot_definition.request.y.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.scatterplot_definition.request.y.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.scatterplot_definition.request.y.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.scatterplot_definition.request.y.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.scatterplot_definition.request.y.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.scatterplot_definition.request.y.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.scatterplot_definition.request.y.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.scatterplot_definition.request.y.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + + +### Nested Schema for `widget.scatterplot_definition.xaxis` + +Optional: + +- `include_zero` (Boolean) Always include zero or fit the axis to the data range. +- `label` (String) The label of the axis to display on the graph. +- `max` (String) Specify the maximum value to show on the Y-axis. +- `min` (String) Specify the minimum value to show on the Y-axis. +- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + + + +### Nested Schema for `widget.scatterplot_definition.yaxis` + +Optional: + +- `include_zero` (Boolean) Always include zero or fit the axis to the data range. +- `label` (String) The label of the axis to display on the graph. +- `max` (String) Specify the maximum value to show on the Y-axis. +- `min` (String) Specify the minimum value to show on the Y-axis. +- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + + + + +### Nested Schema for `widget.service_level_objective_definition` + +Required: + +- `slo_id` (String) The ID of the service level objective used by the widget. +- `time_windows` (List of String) A list of time windows to display in the widget. Valid values are `7d`, `30d`, `90d`, `week_to_date`, `previous_week`, `month_to_date`, `previous_month`, `global_time`. +- `view_mode` (String) The view mode for the widget. Valid values are `overall`, `component`, `both`. +- `view_type` (String) The type of view to use when displaying the widget. Only `detail` is supported. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `global_time_target` (String) The global time target of the widget. +- `show_error_budget` (Boolean) Whether to show the error budget or not. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + + +### Nested Schema for `widget.servicemap_definition` + +Required: + +- `filters` (List of String) Your environment and primary tag (or `*` if enabled for your account). +- `service` (String) The ID of the service to map. + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--servicemap_definition--custom_link)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.servicemap_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + + +### Nested Schema for `widget.slo_list_definition` + +Required: + +- `request` (Block List, Min: 1, Max: 1) A nested block describing the request to use when displaying the widget. Exactly one `request` block is allowed. (see [below for nested schema](#nestedblock--widget--slo_list_definition--request)) + +Optional: + +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.slo_list_definition.request` + +Required: + +- `query` (Block List, Min: 1, Max: 1) Updated SLO List widget. (see [below for nested schema](#nestedblock--widget--slo_list_definition--request--query)) +- `request_type` (String) The request type for the SLO List request. Valid values are `slo_list`. + + +### Nested Schema for `widget.slo_list_definition.request.query` + +Required: + +- `query_string` (String) Widget query. + +Optional: + +- `limit` (Number) Maximum number of results to display in the table. Defaults to `100`. +- `sort` (Block List, Max: 1) The facet and order to sort the data, for example: `{"column": "status.sli", "order": "desc"}`. (see [below for nested schema](#nestedblock--widget--slo_list_definition--request--query--sort)) + + +### Nested Schema for `widget.slo_list_definition.request.query.sort` + +Required: + +- `column` (String) The facet path for the column. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + + + + + + +### Nested Schema for `widget.split_graph_definition` + +Required: + +- `size` (String) Size of the individual graphs in the split. +- `source_widget_definition` (Block List, Min: 1, Max: 1) The original widget we are splitting on. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition)) +- `split_config` (Block List, Min: 1, Max: 1) Encapsulates all user choices about how to split a graph. (see [below for nested schema](#nestedblock--widget--split_graph_definition--split_config)) + +Optional: + +- `has_uniform_y_axes` (Boolean) Normalize y axes across graphs. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `title` (String) The title of the widget. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition` + +Optional: + +- `change_definition` (Block List, Max: 1) The definition for a Change widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition)) +- `geomap_definition` (Block List, Max: 1) The definition for a Geomap widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition)) +- `query_table_definition` (Block List, Max: 1) The definition for a Query Table widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition)) +- `query_value_definition` (Block List, Max: 1) The definition for a Query Value widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition)) +- `scatterplot_definition` (Block List, Max: 1) The definition for a Scatterplot widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition)) +- `sunburst_definition` (Block List, Max: 1) The definition for a Sunburst widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition)) +- `timeseries_definition` (Block List, Max: 1) The definition for a Timeseries widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition)) +- `toplist_definition` (Block List, Max: 1) The definition for a Toplist widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition)) +- `treemap_definition` (Block List, Max: 1) The definition for a Treemap widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition` + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--custom_link)) +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple request blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the request block). (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request` + +Optional: + +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--apm_query)) +- `change_type` (String) Whether to show absolute or relative change. Valid values are `absolute`, `relative`. +- `compare_to` (String) Choose from when to compare current data to. Valid values are `hour_before`, `day_before`, `week_before`, `month_before`. +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--formula)) +- `increase_good` (Boolean) A Boolean indicating whether an increase in the value is good (displayed in green) or not (displayed in red). +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--log_query)) +- `order_by` (String) What to order by. Valid values are `change`, `name`, `present`, `past`. +- `order_dir` (String) Widget sorting method. Valid values are `asc`, `desc`. +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--security_query)) +- `show_present` (Boolean) If set to `true`, displays the current value. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--formula--style)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--query--slo_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition` + +Required: + +- `view` (Block List, Min: 1, Max: 1) The view of the world that the map should render. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--view)) + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--custom_link)) +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `log_query` or `rum_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request)) +- `style` (Block List, Max: 1) The style of the widget graph. One nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--style)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.view` + +Required: + +- `focus` (String) The two-letter ISO code of a country to focus the map on (or `WORLD`). + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request` + +Optional: + +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--formula)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--log_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--rum_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--formula--style)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--slo_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.style` + +Required: + +- `palette` (String) The color palette to apply to the widget. +- `palette_flip` (Boolean) A Boolean indicating whether to flip the palette tones. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition` + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--custom_link)) +- `has_search_bar` (String) Controls the display of the search bar. Valid values are `always`, `never`, `auto`. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query`, `apm_stats_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request` + +Optional: + +- `aggregator` (String) The aggregator to use for time aggregation. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. +- `alias` (String) The alias for the column name (defaults to metric name). +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--apm_query)) +- `apm_stats_query` (Block List, Max: 1) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--apm_stats_query)) +- `cell_display_mode` (List of String) A list of display modes for each table cell. List items one of `number`, `bar`. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background, depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--conditional_formats)) +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--formula)) +- `limit` (Number) The number of lines to show in the table. +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--log_query)) +- `order` (String) The sort order for the rows. Valid values are `asc`, `desc`. +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--security_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.apm_stats_query` + +Required: + +- `env` (String) The environment name. +- `name` (String) The operation name associated with the service. +- `primary_tag` (String) The organization's host group name and value. +- `row_type` (String) The level of detail for the request. Valid values are `service`, `resource`, `span`. +- `service` (String) The service name. + +Optional: + +- `columns` (Block List) Column properties used by the front end for display. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--apm_stats_query--columns)) +- `resource` (String) The resource name. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.apm_stats_query.columns` + +Required: + +- `name` (String) The column name. + +Optional: + +- `alias` (String) A user-assigned alias for the column. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--formula--style)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--slo_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition` + +Optional: + +- `autoscale` (Boolean) A Boolean indicating whether to automatically scale the tile. +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--custom_link)) +- `custom_unit` (String) The unit for the value displayed in the widget. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `precision` (Number) The precision to use when displaying the tile. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request)) +- `text_align` (String) The alignment of the widget's text. Valid values are `center`, `left`, `right`. +- `timeseries_background` (Block List, Max: 1) Set a timeseries on the widget background. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--timeseries_background)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request` + +Optional: + +- `aggregator` (String) The aggregator to use for time aggregation. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--apm_query)) +- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--audit_query)) +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--conditional_formats)) +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--formula)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--security_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.audit_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--audit_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--audit_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--audit_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.audit_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.audit_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--audit_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.audit_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.audit_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--formula--style)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--slo_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.timeseries_background` + +Required: + +- `type` (String) Whether the Timeseries is made using an area or bars. Valid values are `bars`, `area`. + +Optional: + +- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--timeseries_background--yaxis)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.timeseries_background.yaxis` + +Optional: + +- `include_zero` (Boolean) Always include zero or fit the axis to the data range. +- `label` (String) The label of the axis to display on the graph. +- `max` (String) Specify the maximum value to show on the Y-axis. +- `min` (String) Specify the minimum value to show on the Y-axis. +- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition` + +Optional: + +- `color_by_groups` (List of String) List of groups used for colors. +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--custom_link)) +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List, Max: 1) A nested block describing the request to use when displaying the widget. Exactly one `request` block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). +- `xaxis` (Block List, Max: 1) A nested block describing the X-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--xaxis)) +- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--yaxis)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request` + +Optional: + +- `scatterplot_table` (Block List) Scatterplot request containing formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table)) +- `x` (Block List) The query used for the X-Axis. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query`, `apm_stats_query` or `process_query` is required within the block). (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x)) +- `y` (Block List) The query used for the Y-Axis. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query`, `apm_stats_query` or `process_query` is required within the block). (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table` + +Optional: + +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--formula)) +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.formula` + +Required: + +- `dimension` (String) Dimension of the Scatterplot. Valid values are `x`, `y`, `radius`, `color`. +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--slo_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x` + +Optional: + +- `aggregator` (String) Aggregator used for the request. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--apm_query)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--process_query)) +- `q` (String) The metric query to use for this widget. +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--security_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y` + +Optional: + +- `aggregator` (String) Aggregator used for the request. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--apm_query)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--process_query)) +- `q` (String) The metric query to use for this widget. +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--security_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.xaxis` + +Optional: + +- `include_zero` (Boolean) Always include zero or fit the axis to the data range. +- `label` (String) The label of the axis to display on the graph. +- `max` (String) Specify the maximum value to show on the Y-axis. +- `min` (String) Specify the minimum value to show on the Y-axis. +- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.yaxis` + +Optional: + +- `include_zero` (Boolean) Always include zero or fit the axis to the data range. +- `label` (String) The label of the axis to display on the graph. +- `max` (String) Specify the maximum value to show on the Y-axis. +- `min` (String) Specify the minimum value to show on the Y-axis. +- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition` + +Optional: + +- `custom_link` (Block List) Nested block describing a custom link. Multiple `custom_link` blocks are allowed with the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--custom_link)) +- `hide_total` (Boolean) Whether or not to show the total value in the widget. +- `legend_inline` (Block List, Max: 1) Used to configure the inline legend. Cannot be used in conjunction with legend_table. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--legend_inline)) +- `legend_table` (Block List, Max: 1) Used to configure the table legend. Cannot be used in conjunction with legend_inline. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--legend_table)) +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List) Nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed with the structure below (exactly one of `q`, `log_query` or `rum_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. One of `left`, `center`, or `right`. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title. Default is 16. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.legend_inline` + +Required: + +- `type` (String) The type of legend (inline or automatic). Valid values are `inline`, `automatic`. + +Optional: + +- `hide_percent` (Boolean) Whether to hide the percentages of the groups. +- `hide_value` (Boolean) Whether to hide the values of the groups. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.legend_table` + +Required: + +- `type` (String) The type of legend (table or none). Valid values are `table`, `none`. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request` + +Optional: + +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--apm_query)) +- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--audit_query)) +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--formula)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--log_query)) +- `network_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--network_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--security_query)) +- `style` (Block List, Max: 1) Define style for the widget's request. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--style)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.audit_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--audit_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--audit_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--audit_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.audit_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.audit_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--audit_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.audit_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.audit_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--formula--style)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.network_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--network_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--network_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--network_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.network_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.network_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--network_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.network_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.network_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--slo_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.style` + +Optional: + +- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. + + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition` + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--custom_link)) +- `event` (Block List) The definition of the event to overlay on the graph. Multiple `event` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--event)) +- `legend_columns` (Set of String) A list of columns to display in the legend. Valid values are `value`, `avg`, `sum`, `min`, `max`. +- `legend_layout` (String) The layout of the legend displayed in the widget. Valid values are `auto`, `horizontal`, `vertical`. +- `legend_size` (String) The size of the legend displayed in the widget. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `marker` (Block List) A nested block describing the marker to use when displaying the widget. The structure of this block is described below. Multiple `marker` blocks are allowed within a given `tile_def` block. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--marker)) +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `network_query`, `security_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request)) +- `right_yaxis` (Block List, Max: 1) A nested block describing the right Y-Axis Controls. See the `on_right_yaxis` property for which request will use this axis. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--right_yaxis)) +- `show_legend` (Boolean) Whether or not to show the legend on this widget. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). +- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--yaxis)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.event` + +Required: + +- `q` (String) The event query to use in the widget. + +Optional: + +- `tags_execution` (String) The execution method for multi-value filters. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.marker` + +Required: + +- `value` (String) A mathematical expression describing the marker, for example: `y > 1`, `-5 < y < 0`, `y = 19`. + +Optional: + +- `display_type` (String) How the marker lines are displayed, options are one of {`error`, `warning`, `info`, `ok`} combined with one of {`dashed`, `solid`, `bold`}. Example: `error dashed`. +- `label` (String) A label for the line or range. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request` + +Optional: + +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--apm_query)) +- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--audit_query)) +- `display_type` (String) How to display the marker lines. Valid values are `area`, `bars`, `line`, `overlay`. +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--formula)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--log_query)) +- `metadata` (Block List) Used to define expression aliases. Multiple `metadata` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--metadata)) +- `network_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--network_query)) +- `on_right_yaxis` (Boolean) A Boolean indicating whether the request uses the right or left Y-Axis. +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--security_query)) +- `style` (Block List, Max: 1) The style of the widget graph. Exactly one `style` block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--style)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.audit_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--audit_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--audit_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--audit_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.audit_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.audit_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--audit_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.audit_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.audit_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--formula--style)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.metadata` + +Required: + +- `expression` (String) The expression name. + +Optional: + +- `alias_name` (String) The expression alias. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.network_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--network_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--network_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--network_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.network_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.network_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--network_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.network_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.network_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--slo_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.style` + +Optional: + +- `line_type` (String) The type of lines displayed. Valid values are `dashed`, `dotted`, `solid`. +- `line_width` (String) The width of line displayed. Valid values are `normal`, `thick`, `thin`. +- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.right_yaxis` + +Optional: + +- `include_zero` (Boolean) Always include zero or fit the axis to the data range. +- `label` (String) The label of the axis to display on the graph. +- `max` (String) Specify the maximum value to show on the Y-axis. +- `min` (String) Specify the minimum value to show on the Y-axis. +- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.yaxis` + +Optional: + +- `include_zero` (Boolean) Always include zero or fit the axis to the data range. +- `label` (String) The label of the axis to display on the graph. +- `max` (String) Specify the maximum value to show on the Y-axis. +- `min` (String) Specify the minimum value to show on the Y-axis. +- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition` + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--custom_link)) +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request` + +Optional: + +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--apm_query)) +- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--audit_query)) +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background, depending on a rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--conditional_formats)) +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--formula)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--security_query)) +- `style` (Block List, Max: 1) Define request for the widget's style. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--style)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.audit_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--audit_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--audit_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--audit_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.audit_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.audit_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--audit_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.audit_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.audit_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--formula--style)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--slo_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.style` + +Optional: + +- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. + + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition` + +Optional: + +- `request` (Block List) Nested block describing the request to use when displaying the widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request)) +- `title` (String) The title of the widget. + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request` + +Optional: + +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request--formula)) +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request--formula--style)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--slo_query)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + + + + +### Nested Schema for `widget.split_graph_definition.split_config` + +Required: + +- `sort` (Block List, Min: 1, Max: 1) Controls the order in which graphs appear in the split. (see [below for nested schema](#nestedblock--widget--split_graph_definition--split_config--sort)) +- `split_dimensions` (Block List, Min: 1, Max: 1) The property by which the graph splits (see [below for nested schema](#nestedblock--widget--split_graph_definition--split_config--split_dimensions)) + +Optional: + +- `limit` (Number) Maximum number of graphs to display in the widget. +- `static_splits` (Block List, Max: 100) The property by which the graph splits (see [below for nested schema](#nestedblock--widget--split_graph_definition--split_config--static_splits)) + + +### Nested Schema for `widget.split_graph_definition.split_config.sort` + +Required: + +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `compute` (Block List, Max: 1) Defines the metric and aggregation used as the sort value (see [below for nested schema](#nestedblock--widget--split_graph_definition--split_config--sort--compute)) + + +### Nested Schema for `widget.split_graph_definition.split_config.sort.compute` + +Required: + +- `metric` (String) The metric to use for sorting graphs. + +Optional: + +- `aggregation` (String) How to aggregate the sort metric for the purposes of ordering. + + + + +### Nested Schema for `widget.split_graph_definition.split_config.split_dimensions` + +Required: + +- `one_graph_per` (String) The system interprets this attribute differently depending on the data source of the query being split. For metrics, it's a tag. For the events platform, it's an attribute or tag. + + + +### Nested Schema for `widget.split_graph_definition.split_config.static_splits` + +Required: + +- `split_vector` (Block List, Min: 1) The split graph list contains a graph for each value of the split dimension. (see [below for nested schema](#nestedblock--widget--split_graph_definition--split_config--static_splits--split_vector)) + + +### Nested Schema for `widget.split_graph_definition.split_config.static_splits.split_vector` + +Required: + +- `tag_key` (String) +- `tag_values` (List of String) + + + + + + +### Nested Schema for `widget.sunburst_definition` + +Optional: + +- `custom_link` (Block List) Nested block describing a custom link. Multiple `custom_link` blocks are allowed with the structure below. (see [below for nested schema](#nestedblock--widget--sunburst_definition--custom_link)) +- `hide_total` (Boolean) Whether or not to show the total value in the widget. +- `legend_inline` (Block List, Max: 1) Used to configure the inline legend. Cannot be used in conjunction with legend_table. (see [below for nested schema](#nestedblock--widget--sunburst_definition--legend_inline)) +- `legend_table` (Block List, Max: 1) Used to configure the table legend. Cannot be used in conjunction with legend_inline. (see [below for nested schema](#nestedblock--widget--sunburst_definition--legend_table)) +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List) Nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed with the structure below (exactly one of `q`, `log_query` or `rum_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--sunburst_definition--request)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. One of `left`, `center`, or `right`. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title. Default is 16. + + +### Nested Schema for `widget.sunburst_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.sunburst_definition.legend_inline` + +Required: + +- `type` (String) The type of legend (inline or automatic). Valid values are `inline`, `automatic`. + +Optional: + +- `hide_percent` (Boolean) Whether to hide the percentages of the groups. +- `hide_value` (Boolean) Whether to hide the values of the groups. + + + +### Nested Schema for `widget.sunburst_definition.legend_table` + +Required: + +- `type` (String) The type of legend (table or none). Valid values are `table`, `none`. + + + +### Nested Schema for `widget.sunburst_definition.request` + +Optional: + +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--apm_query)) +- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--audit_query)) +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--formula)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--log_query)) +- `network_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--network_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--security_query)) +- `style` (Block List, Max: 1) Define style for the widget's request. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--style)) + + +### Nested Schema for `widget.sunburst_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.sunburst_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.sunburst_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.sunburst_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.sunburst_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.sunburst_definition.request.audit_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--audit_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--audit_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--audit_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.sunburst_definition.request.audit_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.sunburst_definition.request.audit_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--audit_query--group_by--sort_query)) + + +### Nested Schema for `widget.sunburst_definition.request.audit_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.sunburst_definition.request.audit_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.sunburst_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--formula--style)) + + +### Nested Schema for `widget.sunburst_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.sunburst_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.sunburst_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.sunburst_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.sunburst_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.sunburst_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.sunburst_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.sunburst_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.sunburst_definition.request.network_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--network_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--network_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--network_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.sunburst_definition.request.network_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.sunburst_definition.request.network_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--network_query--group_by--sort_query)) + + +### Nested Schema for `widget.sunburst_definition.request.network_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.sunburst_definition.request.network_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.sunburst_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.sunburst_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--query--slo_query)) + + +### Nested Schema for `widget.sunburst_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.sunburst_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.sunburst_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.sunburst_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.sunburst_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.sunburst_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.sunburst_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.sunburst_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.sunburst_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.sunburst_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.sunburst_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.sunburst_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.sunburst_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.sunburst_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.sunburst_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.sunburst_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.sunburst_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.sunburst_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--sunburst_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.sunburst_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.sunburst_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.sunburst_definition.request.style` + +Optional: + +- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. + + + + + +### Nested Schema for `widget.timeseries_definition` + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--timeseries_definition--custom_link)) +- `event` (Block List) The definition of the event to overlay on the graph. Multiple `event` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--timeseries_definition--event)) +- `legend_columns` (Set of String) A list of columns to display in the legend. Valid values are `value`, `avg`, `sum`, `min`, `max`. +- `legend_layout` (String) The layout of the legend displayed in the widget. Valid values are `auto`, `horizontal`, `vertical`. +- `legend_size` (String) The size of the legend displayed in the widget. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `marker` (Block List) A nested block describing the marker to use when displaying the widget. The structure of this block is described below. Multiple `marker` blocks are allowed within a given `tile_def` block. (see [below for nested schema](#nestedblock--widget--timeseries_definition--marker)) +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `network_query`, `security_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--timeseries_definition--request)) +- `right_yaxis` (Block List, Max: 1) A nested block describing the right Y-Axis Controls. See the `on_right_yaxis` property for which request will use this axis. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--timeseries_definition--right_yaxis)) +- `show_legend` (Boolean) Whether or not to show the legend on this widget. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). +- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--timeseries_definition--yaxis)) + + +### Nested Schema for `widget.timeseries_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.timeseries_definition.event` + +Required: + +- `q` (String) The event query to use in the widget. + +Optional: + +- `tags_execution` (String) The execution method for multi-value filters. + + + +### Nested Schema for `widget.timeseries_definition.marker` + +Required: + +- `value` (String) A mathematical expression describing the marker, for example: `y > 1`, `-5 < y < 0`, `y = 19`. + +Optional: + +- `display_type` (String) How the marker lines are displayed, options are one of {`error`, `warning`, `info`, `ok`} combined with one of {`dashed`, `solid`, `bold`}. Example: `error dashed`. +- `label` (String) A label for the line or range. + + + +### Nested Schema for `widget.timeseries_definition.request` + +Optional: + +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--apm_query)) +- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--audit_query)) +- `display_type` (String) How to display the marker lines. Valid values are `area`, `bars`, `line`, `overlay`. +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--formula)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--log_query)) +- `metadata` (Block List) Used to define expression aliases. Multiple `metadata` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--metadata)) +- `network_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--network_query)) +- `on_right_yaxis` (Boolean) A Boolean indicating whether the request uses the right or left Y-Axis. +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--security_query)) +- `style` (Block List, Max: 1) The style of the widget graph. Exactly one `style` block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--style)) + + +### Nested Schema for `widget.timeseries_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.timeseries_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.timeseries_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.timeseries_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.timeseries_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.timeseries_definition.request.audit_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--audit_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--audit_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--audit_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.timeseries_definition.request.audit_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.timeseries_definition.request.audit_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--audit_query--group_by--sort_query)) + + +### Nested Schema for `widget.timeseries_definition.request.audit_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.timeseries_definition.request.audit_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.timeseries_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--formula--style)) + + +### Nested Schema for `widget.timeseries_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.timeseries_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.timeseries_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.timeseries_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.timeseries_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.timeseries_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.timeseries_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.timeseries_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.timeseries_definition.request.metadata` + +Required: + +- `expression` (String) The expression name. + +Optional: + +- `alias_name` (String) The expression alias. + + + +### Nested Schema for `widget.timeseries_definition.request.network_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--network_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--network_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--network_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.timeseries_definition.request.network_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.timeseries_definition.request.network_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--network_query--group_by--sort_query)) + + +### Nested Schema for `widget.timeseries_definition.request.network_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.timeseries_definition.request.network_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.timeseries_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.timeseries_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--query--slo_query)) + + +### Nested Schema for `widget.timeseries_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.timeseries_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.timeseries_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.timeseries_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.timeseries_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.timeseries_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.timeseries_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.timeseries_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.timeseries_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.timeseries_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.timeseries_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.timeseries_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.timeseries_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.timeseries_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.timeseries_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.timeseries_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.timeseries_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.timeseries_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--timeseries_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.timeseries_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.timeseries_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.timeseries_definition.request.style` + +Optional: + +- `line_type` (String) The type of lines displayed. Valid values are `dashed`, `dotted`, `solid`. +- `line_width` (String) The width of line displayed. Valid values are `normal`, `thick`, `thin`. +- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. + + + + +### Nested Schema for `widget.timeseries_definition.right_yaxis` + +Optional: + +- `include_zero` (Boolean) Always include zero or fit the axis to the data range. +- `label` (String) The label of the axis to display on the graph. +- `max` (String) Specify the maximum value to show on the Y-axis. +- `min` (String) Specify the minimum value to show on the Y-axis. +- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + + + +### Nested Schema for `widget.timeseries_definition.yaxis` + +Optional: + +- `include_zero` (Boolean) Always include zero or fit the axis to the data range. +- `label` (String) The label of the axis to display on the graph. +- `max` (String) Specify the maximum value to show on the Y-axis. +- `min` (String) Specify the minimum value to show on the Y-axis. +- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + + + + +### Nested Schema for `widget.toplist_definition` + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--toplist_definition--custom_link)) +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--toplist_definition--request)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.toplist_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.toplist_definition.request` + +Optional: + +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--apm_query)) +- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--audit_query)) +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background, depending on a rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--conditional_formats)) +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--toplist_definition--request--formula)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--toplist_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--security_query)) +- `style` (Block List, Max: 1) Define request for the widget's style. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--style)) + + +### Nested Schema for `widget.toplist_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.toplist_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.toplist_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.toplist_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.toplist_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.toplist_definition.request.audit_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--audit_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--audit_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--audit_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.toplist_definition.request.audit_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.toplist_definition.request.audit_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--audit_query--group_by--sort_query)) + + +### Nested Schema for `widget.toplist_definition.request.audit_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.toplist_definition.request.audit_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.toplist_definition.request.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.toplist_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--formula--style)) + + +### Nested Schema for `widget.toplist_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.toplist_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.toplist_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.toplist_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.toplist_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.toplist_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.toplist_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.toplist_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.toplist_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.toplist_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--query--slo_query)) + + +### Nested Schema for `widget.toplist_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.toplist_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.toplist_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.toplist_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.toplist_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.toplist_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.toplist_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.toplist_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.toplist_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.toplist_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.toplist_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.toplist_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.toplist_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.toplist_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.toplist_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.toplist_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.toplist_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.toplist_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.toplist_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.toplist_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.toplist_definition.request.style` + +Optional: + +- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. + + + + + +### Nested Schema for `widget.topology_map_definition` + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--topology_map_definition--custom_link)) +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple request blocks are allowed using the structure below (`query` and `request_type` are required within the request). (see [below for nested schema](#nestedblock--widget--topology_map_definition--request)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.topology_map_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.topology_map_definition.request` + +Required: + +- `query` (Block List, Min: 1) The query for a Topology request. (see [below for nested schema](#nestedblock--widget--topology_map_definition--request--query)) +- `request_type` (String) The request type for the Topology request ('topology'). Valid values are `topology`. + + +### Nested Schema for `widget.topology_map_definition.request.query` + +Required: + +- `data_source` (String) The data source for the Topology request ('service_map' or 'data_streams'). Valid values are `data_streams`, `service_map`. +- `filters` (List of String) Your environment and primary tag (or `*` if enabled for your account). +- `service` (String) The ID of the service to map. + + + + + +### Nested Schema for `widget.trace_service_definition` + +Required: + +- `env` (String) APM environment. +- `service` (String) APM service. +- `span_name` (String) APM span name + +Optional: + +- `display_format` (String) The number of columns to display. Valid values are `one_column`, `two_column`, `three_column`. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `show_breakdown` (Boolean) Whether to show the latency breakdown or not. +- `show_distribution` (Boolean) Whether to show the latency distribution or not. +- `show_errors` (Boolean) Whether to show the error metrics or not. +- `show_hits` (Boolean) Whether to show the hits metrics or not +- `show_latency` (Boolean) Whether to show the latency metrics or not. +- `show_resource_list` (Boolean) Whether to show the resource list or not. +- `size_format` (String) The size of the widget. Valid values are `small`, `medium`, `large`. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + + +### Nested Schema for `widget.treemap_definition` + +Optional: + +- `request` (Block List) Nested block describing the request to use when displaying the widget. (see [below for nested schema](#nestedblock--widget--treemap_definition--request)) +- `title` (String) The title of the widget. + + +### Nested Schema for `widget.treemap_definition.request` + +Optional: + +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--treemap_definition--request--formula)) +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--treemap_definition--request--query)) + + +### Nested Schema for `widget.treemap_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--treemap_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--treemap_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--treemap_definition--request--formula--style)) + + +### Nested Schema for `widget.treemap_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.treemap_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.treemap_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.treemap_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--treemap_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--treemap_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--treemap_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--treemap_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--treemap_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--treemap_definition--request--query--slo_query)) + + +### Nested Schema for `widget.treemap_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.treemap_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.treemap_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--treemap_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--treemap_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--treemap_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.treemap_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.treemap_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--treemap_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.treemap_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.treemap_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.treemap_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.treemap_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.treemap_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + + + +### Nested Schema for `widget.widget_layout` + +Required: + +- `height` (Number) The height of the widget. +- `width` (Number) The width of the widget. +- `x` (Number) The position of the widget on the x (horizontal) axis. Should be greater than or equal to 0. +- `y` (Number) The position of the widget on the y (vertical) axis. Should be greater than or equal to 0. + +Optional: + +- `is_column_break` (Boolean) Whether the widget should be the first one on the second column in high density or not. Only for the new dashboard layout and only one widget in the dashboard should have this property set to `true`. From ea281a91b65dc488299c6ba0803936685961d5ea Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Mon, 23 Oct 2023 20:35:13 -0400 Subject: [PATCH 04/48] update tests --- .../TestAccDatadogPowerpackFreeText.freeze | 2 +- .../TestAccDatadogPowerpack_update.freeze | 2 +- .../TestAccDatadogPowerpack_update.yaml | 92 ++++++++++++++++++- .../tests/resource_datadog_powerpack_test.go | 15 ++- 4 files changed, 96 insertions(+), 15 deletions(-) diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.freeze index c7d0cc6b5b..dcee8a0cc5 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.freeze @@ -1 +1 @@ -2023-10-23T19:46:37.306026-04:00 \ No newline at end of file +2023-10-23T20:32:02.631994-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpack_update.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpack_update.freeze index c223000124..7aac18c78c 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpack_update.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpack_update.freeze @@ -1 +1 @@ -2023-10-23T18:13:16.673639-04:00 \ No newline at end of file +2023-10-23T20:32:05.47733-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpack_update.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpack_update.yaml index 329841caa2..b75c3b33fd 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpack_update.yaml +++ b/datadog/tests/cassettes/TestAccDatadogPowerpack_update.yaml @@ -3,7 +3,7 @@ version: 1 interactions: - request: body: | - {"data":{"attributes":{"description":"Test Powerpack","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpack_update-local-1698099196","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"}}]}},"name":"tf-TestAccDatadogPowerpack_update-local-1698099196","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + {"data":{"attributes":{"description":"Test Powerpack","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpack_update-local-1698107525","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"}}]}},"name":"tf-TestAccDatadogPowerpack_update-local-1698107525","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} form: {} headers: Accept: @@ -13,10 +13,94 @@ interactions: url: https://api.datadoghq.com/api/v2/powerpacks method: POST response: - body: '{"status":"error","code":403,"errors":["Forbidden"],"statuspage":"{{ .Values.status_page_link }}","twitter":"http://twitter.com/datadogops","email":"support@datadoghq.com"}' + body: | + {"data":{"type":"powerpack","id":"c3497d14-7204-11ee-bd15-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpack_update-local-1698107525","description":"Test Powerpack","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpack_update-local-1698107525","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":7471808949109868}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/c3497d14-7204-11ee-bd15-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"c3497d14-7204-11ee-bd15-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpack_update-local-1698107525","description":"Test Powerpack","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpack_update-local-1698107525","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":7471808949109868}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/c3497d14-7204-11ee-bd15-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"c3497d14-7204-11ee-bd15-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpack_update-local-1698107525","description":"Test Powerpack","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpack_update-local-1698107525","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":7471808949109868}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/c3497d14-7204-11ee-bd15-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"c3497d14-7204-11ee-bd15-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpack_update-local-1698107525","description":"Test Powerpack","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpack_update-local-1698107525","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":7471808949109868}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - '*/*' + url: https://api.datadoghq.com/api/v2/powerpacks/c3497d14-7204-11ee-bd15-da7ad0900002 + method: DELETE + response: + body: "" + headers: + Content-Type: + - text/html; charset=utf-8 + status: 204 No Content + code: 204 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/c3497d14-7204-11ee-bd15-da7ad0900002 + method: GET + response: + body: '{"errors":["Powerpack with ID c3497d14-7204-11ee-bd15-da7ad0900002 not found"]}' headers: Content-Type: - application/json - status: 403 Forbidden - code: 403 + status: 404 Not Found + code: 404 duration: "" diff --git a/datadog/tests/resource_datadog_powerpack_test.go b/datadog/tests/resource_datadog_powerpack_test.go index fdce2e038f..165bf33f15 100644 --- a/datadog/tests/resource_datadog_powerpack_test.go +++ b/datadog/tests/resource_datadog_powerpack_test.go @@ -34,20 +34,18 @@ resource "datadog_powerpack" "simple_powerpack" { } var datadogSimplePowerpackConfigAsserts = []string{ - // Dashboard metadata + // Powerpack metadata "description = Test Powerpack", - "layout_type = ordered", "widget.# = 1", "tags.# = 1", "tags.0 = tag:foo1", // IFrame widget - "widget.0.iframe_definition.0.url = http://google.com", + "widget.0.iframe_definition.0.url = https://google.com", // Template Variables - "template_variable.# = 1", - "template_variable.0.name = datacenter", - "template_variable.0.prefix = host", - "template_variable.0.defaults.# = 1", - "template_variable.0.defaults.0 = default", + "template_variables.# = 1", + "template_variables.0.name = datacenter", + "template_variables.0.defaults.# = 1", + "template_variables.0.defaults.0 = defaults", } func TestAccDatadogPowerpack_update(t *testing.T) { @@ -55,7 +53,6 @@ func TestAccDatadogPowerpack_update(t *testing.T) { ctx, accProviders := testAccProviders(context.Background(), t) dbName := uniqueEntityName(ctx, t) asserts := datadogSimplePowerpackConfigAsserts - asserts = append(asserts, fmt.Sprintf("title = %s", dbName)) accProvider := testAccProvider(t, accProviders) checks := testCheckResourceAttrs("datadog_powerpack.simple_powerpack", checkPowerpackExists(accProvider), asserts) From 270c8f1689f8893e8347fec4d1a808a29d441335 Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Mon, 23 Oct 2023 21:23:21 -0400 Subject: [PATCH 05/48] add widget layout and fix tests --- datadog/resource_datadog_powerpack.go | 46 ++++++++- .../TestAccDatadogPowerpackFreeText.freeze | 2 +- .../TestAccDatadogPowerpackFreeText.yaml | 94 ++++++++++++++++++- .../TestAccDatadogPowerpack_update.freeze | 2 +- ...source_datadog_powerpack_free_text_test.go | 18 ++-- 5 files changed, 140 insertions(+), 22 deletions(-) diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index 556ced8463..38e79b5932 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -318,6 +318,7 @@ func dashboardWidgetsToPpkWidgets(terraformWidgets *[]map[string]interface{}) ([ continue } widgetDef := make(map[string]interface{}) + var widgetLayout *datadogV2.PowerpackInnerWidgetLayout for widgetType, terraformDefinition := range terraformWidget { // Each terraform definition contains an ID field which is unused, @@ -325,14 +326,31 @@ func dashboardWidgetsToPpkWidgets(terraformWidgets *[]map[string]interface{}) ([ if widgetType == "id" { continue } - widgetDef = terraformDefinition.([]map[string]interface{})[0] - // The type in the dictionary is in the format _definition, where can contain - // a type with multiple underscores. To parse a valid type name, we take a substring up until the last - // underscore. Ex: free_text_definition -> free_text, hostmap_definition -> hostmap - widgetDef["type"] = widgetType[:strings.LastIndex(widgetType, "_")] + if widgetType == "widget_layout" { + //diags = append(diags, diag.Diagnostic{ + // Severity: diag.Error, + // Summary: fmt.Sprintf("terraformDefinition: %s", terraformDefinition), + //}) + dimensions := terraformDefinition.([]map[string]interface{})[0] + height := dimensions["height"].(int64) + width := dimensions["width"].(int64) + x := dimensions["x"].(int64) + y := dimensions["y"].(int64) + widgetLayout = datadogV2.NewPowerpackInnerWidgetLayout(height, width, x, y) + } else { + widgetDef = terraformDefinition.([]map[string]interface{})[0] + // The type in the dictionary is in the format _definition, where can contain + // a type with multiple underscores. To parse a valid type name, we take a substring up until the last + // underscore. Ex: free_text_definition -> free_text, hostmap_definition -> hostmap + widgetDef["type"] = widgetType[:strings.LastIndex(widgetType, "_")] + } } widgetsDDItem := datadogV2.NewPowerpackInnerWidgets(widgetDef) + if widgetLayout != nil { + widgetsDDItem.SetLayout(*widgetLayout) + } + widgets[i] = *widgetsDDItem } return widgets, diags @@ -375,10 +393,28 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) datadogWidget := datadogV1.NewWidget(definition) + if terraformWidget.Layout != nil { + layout := map[string]interface{}{ + "x": terraformWidget.Layout.X, + "y": terraformWidget.Layout.Y, + "width": terraformWidget.Layout.Width, + "height": terraformWidget.Layout.Height, + } + datadogWidget.SetLayout(*buildPowerpackWidgetLayout(layout)) + } + datadogWidgets = append(datadogWidgets, *datadogWidget) } return &datadogWidgets, diags } +func buildPowerpackWidgetLayout(terraformLayout map[string]interface{}) *datadogV1.WidgetLayout { + datadogLayout := datadogV1.NewWidgetLayoutWithDefaults() + datadogLayout.SetX(terraformLayout["x"].(int64)) + datadogLayout.SetY(terraformLayout["y"].(int64)) + datadogLayout.SetHeight(terraformLayout["height"].(int64)) + datadogLayout.SetWidth(terraformLayout["width"].(int64)) + return datadogLayout +} func updatePowerpackState(d *schema.ResourceData, powerpack *datadogV2.PowerpackResponse) diag.Diagnostics { if powerpack.Data == nil { diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.freeze index dcee8a0cc5..00e60585c6 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.freeze @@ -1 +1 @@ -2023-10-23T20:32:02.631994-04:00 \ No newline at end of file +2023-10-23T21:22:04.452451-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.yaml index a9ad5a3a8f..b81e354715 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.yaml +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.yaml @@ -3,20 +3,104 @@ version: 1 interactions: - request: body: | - {"description":"Created using the Datadog provider in Terraform","id":"","is_read_only":true,"layout_type":"free","notify_list":[],"tags":[],"template_variable_presets":[],"template_variables":[],"title":"tf-TestAccDatadogPowerpackFreeText-local-1698104797","widgets":[{"definition":{"color":"#eb364b","font_size":"56","text":"Free Text","text_align":"left","type":"free_text"},"layout":{"height":43,"width":32,"x":5,"y":5}}]} + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackFreeText-local-1698110524","type":"group","widgets":[{"definition":{"color":"#eb364b","font_size":"56","text":"Free Text","text_align":"left","type":"free_text"},"layout":{"height":4,"width":5,"x":5,"y":5}}]}},"name":"tf-TestAccDatadogPowerpackFreeText-local-1698110524","tags":["tag:foo1"]},"type":"powerpack"}} form: {} headers: Accept: - application/json Content-Type: - application/json - url: https://api.datadoghq.com/api/v1/dashboard + url: https://api.datadoghq.com/api/v2/powerpacks method: POST response: - body: '{"status":"error","code":403,"errors":["Forbidden"],"statuspage":"{{ .Values.status_page_link }}","twitter":"http://twitter.com/datadogops","email":"support@datadoghq.com"}' + body: | + {"data":{"type":"powerpack","id":"bec03ae2-720b-11ee-8fc2-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackFreeText-local-1698110524","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackFreeText-local-1698110524","type":"group","widgets":[{"definition":{"color":"#eb364b","font_size":"56","text":"Free Text","text_align":"left","type":"free_text"},"layout":{"height":4,"width":5,"x":5,"y":5},"id":2016972070292012}]}},"template_variables":null,"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/bec03ae2-720b-11ee-8fc2-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"bec03ae2-720b-11ee-8fc2-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackFreeText-local-1698110524","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackFreeText-local-1698110524","type":"group","widgets":[{"definition":{"color":"#eb364b","font_size":"56","text":"Free Text","text_align":"left","type":"free_text"},"layout":{"height":4,"width":5,"x":5,"y":5},"id":2016972070292012}]}},"template_variables":null,"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/bec03ae2-720b-11ee-8fc2-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"bec03ae2-720b-11ee-8fc2-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackFreeText-local-1698110524","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackFreeText-local-1698110524","type":"group","widgets":[{"definition":{"color":"#eb364b","font_size":"56","text":"Free Text","text_align":"left","type":"free_text"},"layout":{"height":4,"width":5,"x":5,"y":5},"id":2016972070292012}]}},"template_variables":null,"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/bec03ae2-720b-11ee-8fc2-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"bec03ae2-720b-11ee-8fc2-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackFreeText-local-1698110524","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackFreeText-local-1698110524","type":"group","widgets":[{"definition":{"color":"#eb364b","font_size":"56","text":"Free Text","text_align":"left","type":"free_text"},"layout":{"height":4,"width":5,"x":5,"y":5},"id":2016972070292012}]}},"template_variables":null,"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - '*/*' + url: https://api.datadoghq.com/api/v2/powerpacks/bec03ae2-720b-11ee-8fc2-da7ad0900002 + method: DELETE + response: + body: "" + headers: + Content-Type: + - text/html; charset=utf-8 + status: 204 No Content + code: 204 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/bec03ae2-720b-11ee-8fc2-da7ad0900002 + method: GET + response: + body: '{"errors":["Powerpack with ID bec03ae2-720b-11ee-8fc2-da7ad0900002 not found"]}' headers: Content-Type: - application/json - status: 403 Forbidden - code: 403 + status: 404 Not Found + code: 404 duration: "" diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpack_update.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpack_update.freeze index 7aac18c78c..46837facb4 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpack_update.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpack_update.freeze @@ -1 +1 @@ -2023-10-23T20:32:05.47733-04:00 \ No newline at end of file +2023-10-23T21:22:01.57971-04:00 \ No newline at end of file diff --git a/datadog/tests/resource_datadog_powerpack_free_text_test.go b/datadog/tests/resource_datadog_powerpack_free_text_test.go index aa3900c168..fa31905f5d 100644 --- a/datadog/tests/resource_datadog_powerpack_free_text_test.go +++ b/datadog/tests/resource_datadog_powerpack_free_text_test.go @@ -6,10 +6,9 @@ import ( const datadogPowerpackFreeTextConfig = ` resource "datadog_powerpack" "free_text_powerpack" { - title = "{{uniq}}" + name = "{{uniq}}" + tags = ["tag:foo1"] description = "Created using the Datadog provider in Terraform" - layout_type = "free" - is_read_only = "true" widget { free_text_definition { @@ -19,8 +18,8 @@ resource "datadog_powerpack" "free_text_powerpack" { text_align = "left" } widget_layout { - height = 43 - width = 32 + height = 4 + width = 5 x = 5 y = 5 } @@ -29,17 +28,16 @@ resource "datadog_powerpack" "free_text_powerpack" { ` var datadogPowerpackFreeTextAsserts = []string{ + "tags.# = 1", + "tags.0 = tag:foo1", "widget.0.widget_layout.0.y = 5", "widget.0.free_text_definition.0.text = Free Text", - "layout_type = free", "description = Created using the Datadog provider in Terraform", "widget.0.free_text_definition.0.font_size = 56", - "is_read_only = true", "widget.0.free_text_definition.0.color = #eb364b", - "widget.0.widget_layout.0.width = 32", - "widget.0.widget_layout.0.height = 43", + "widget.0.widget_layout.0.width = 5", + "widget.0.widget_layout.0.height = 4", "widget.0.free_text_definition.0.text_align = left", - "title = {{uniq}}", "widget.0.widget_layout.0.x = 5", "widget.0.layout.% = 0", } From 08dd2d76b517fb8fa9ec25f9454beadfe6a6299d Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Mon, 23 Oct 2023 21:52:44 -0400 Subject: [PATCH 06/48] add tests for the rest of the widgets --- .../TestAccDatadogPowerpackAlertGraph.freeze | 1 + .../TestAccDatadogPowerpackAlertGraph.yaml | 106 ++++++++++++++++++ .../TestAccDatadogPowerpackCheckStatus.freeze | 1 + .../TestAccDatadogPowerpackCheckStatus.yaml | 106 ++++++++++++++++++ .../TestAccDatadogPowerpackFreeText.freeze | 2 +- .../TestAccDatadogPowerpackIFrame.freeze | 1 + .../TestAccDatadogPowerpackIFrame.yaml | 106 ++++++++++++++++++ .../TestAccDatadogPowerpackImage.freeze | 1 + .../TestAccDatadogPowerpackImage.yaml | 106 ++++++++++++++++++ .../TestAccDatadogPowerpackServicemap.freeze | 1 + .../TestAccDatadogPowerpackServicemap.yaml | 106 ++++++++++++++++++ .../TestAccDatadogPowerpack_update.freeze | 2 +- datadog/tests/provider_test.go | 5 + ...urce_datadog_powerpack_alert_graph_test.go | 50 +++++++++ ...rce_datadog_powerpack_check_status_test.go | 42 +++++++ .../resource_datadog_powerpack_iframe_test.go | 41 +++++++ .../resource_datadog_powerpack_image_test.go | 46 ++++++++ ...ource_datadog_powerpack_servicemap_test.go | 51 +++++++++ 18 files changed, 772 insertions(+), 2 deletions(-) create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.freeze create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.yaml create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackCheckStatus.freeze create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackCheckStatus.yaml create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackIFrame.freeze create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackIFrame.yaml create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackImage.freeze create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackImage.yaml create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackServicemap.freeze create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackServicemap.yaml create mode 100644 datadog/tests/resource_datadog_powerpack_alert_graph_test.go create mode 100644 datadog/tests/resource_datadog_powerpack_check_status_test.go create mode 100644 datadog/tests/resource_datadog_powerpack_iframe_test.go create mode 100644 datadog/tests/resource_datadog_powerpack_image_test.go create mode 100644 datadog/tests/resource_datadog_powerpack_servicemap_test.go diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.freeze new file mode 100644 index 0000000000..11020e7fb5 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.freeze @@ -0,0 +1 @@ +2023-10-23T21:48:27.85447-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.yaml new file mode 100644 index 0000000000..5239a57d90 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.yaml @@ -0,0 +1,106 @@ +--- +version: 1 +interactions: +- request: + body: | + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698111922","type":"group","widgets":[{"definition":{"alert_id":"895605","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"}}]}},"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698111922","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks + method: POST + response: + body: | + {"data":{"type":"powerpack","id":"00b65f3c-720f-11ee-8788-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698111922","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698111922","type":"group","widgets":[{"definition":{"alert_id":"895605","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"},"id":7119659130114370}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/00b65f3c-720f-11ee-8788-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"00b65f3c-720f-11ee-8788-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698111922","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698111922","type":"group","widgets":[{"definition":{"alert_id":"895605","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"},"id":7119659130114370}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/00b65f3c-720f-11ee-8788-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"00b65f3c-720f-11ee-8788-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698111922","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698111922","type":"group","widgets":[{"definition":{"alert_id":"895605","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"},"id":7119659130114370}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/00b65f3c-720f-11ee-8788-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"00b65f3c-720f-11ee-8788-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698111922","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698111922","type":"group","widgets":[{"definition":{"alert_id":"895605","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"},"id":7119659130114370}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - '*/*' + url: https://api.datadoghq.com/api/v2/powerpacks/00b65f3c-720f-11ee-8788-da7ad0900002 + method: DELETE + response: + body: "" + headers: + Content-Type: + - text/html; charset=utf-8 + status: 204 No Content + code: 204 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/00b65f3c-720f-11ee-8788-da7ad0900002 + method: GET + response: + body: '{"errors":["Powerpack with ID 00b65f3c-720f-11ee-8788-da7ad0900002 not found"]}' + headers: + Content-Type: + - application/json + status: 404 Not Found + code: 404 + duration: "" diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackCheckStatus.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackCheckStatus.freeze new file mode 100644 index 0000000000..04e1b44053 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackCheckStatus.freeze @@ -0,0 +1 @@ +2023-10-23T21:48:27.854248-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackCheckStatus.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackCheckStatus.yaml new file mode 100644 index 0000000000..552ecfcd92 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackCheckStatus.yaml @@ -0,0 +1,106 @@ +--- +version: 1 +interactions: +- request: + body: | + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackCheckStatus-local-1698111212","type":"group","widgets":[{"definition":{"check":"aws.ecs.agent_connected","group_by":["account","cluster"],"grouping":"cluster","tags":["account:demo","cluster:awseb-ruthebdog-env-8-dn3m6u3gvk"],"title":"Widget Title!!","type":"check_status"}}]}},"name":"tf-TestAccDatadogPowerpackCheckStatus-local-1698111212","tags":["tag:foo1"]},"type":"powerpack"}} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks + method: POST + response: + body: | + {"data":{"type":"powerpack","id":"5943475c-720d-11ee-ad19-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackCheckStatus-local-1698111212","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackCheckStatus-local-1698111212","type":"group","widgets":[{"definition":{"check":"aws.ecs.agent_connected","group_by":["account","cluster"],"grouping":"cluster","tags":["account:demo","cluster:awseb-ruthebdog-env-8-dn3m6u3gvk"],"title":"Widget Title!!","type":"check_status"},"id":2742876869325049}]}},"template_variables":null,"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/5943475c-720d-11ee-ad19-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"5943475c-720d-11ee-ad19-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackCheckStatus-local-1698111212","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackCheckStatus-local-1698111212","type":"group","widgets":[{"definition":{"check":"aws.ecs.agent_connected","group_by":["account","cluster"],"grouping":"cluster","tags":["account:demo","cluster:awseb-ruthebdog-env-8-dn3m6u3gvk"],"title":"Widget Title!!","type":"check_status"},"id":2742876869325049}]}},"template_variables":null,"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/5943475c-720d-11ee-ad19-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"5943475c-720d-11ee-ad19-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackCheckStatus-local-1698111212","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackCheckStatus-local-1698111212","type":"group","widgets":[{"definition":{"check":"aws.ecs.agent_connected","group_by":["account","cluster"],"grouping":"cluster","tags":["account:demo","cluster:awseb-ruthebdog-env-8-dn3m6u3gvk"],"title":"Widget Title!!","type":"check_status"},"id":2742876869325049}]}},"template_variables":null,"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/5943475c-720d-11ee-ad19-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"5943475c-720d-11ee-ad19-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackCheckStatus-local-1698111212","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackCheckStatus-local-1698111212","type":"group","widgets":[{"definition":{"check":"aws.ecs.agent_connected","group_by":["account","cluster"],"grouping":"cluster","tags":["account:demo","cluster:awseb-ruthebdog-env-8-dn3m6u3gvk"],"title":"Widget Title!!","type":"check_status"},"id":2742876869325049}]}},"template_variables":null,"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - '*/*' + url: https://api.datadoghq.com/api/v2/powerpacks/5943475c-720d-11ee-ad19-da7ad0900002 + method: DELETE + response: + body: "" + headers: + Content-Type: + - text/html; charset=utf-8 + status: 204 No Content + code: 204 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/5943475c-720d-11ee-ad19-da7ad0900002 + method: GET + response: + body: '{"errors":["Powerpack with ID 5943475c-720d-11ee-ad19-da7ad0900002 not found"]}' + headers: + Content-Type: + - application/json + status: 404 Not Found + code: 404 + duration: "" diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.freeze index 00e60585c6..4a2b2d958d 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.freeze @@ -1 +1 @@ -2023-10-23T21:22:04.452451-04:00 \ No newline at end of file +2023-10-23T21:48:27.853921-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackIFrame.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackIFrame.freeze new file mode 100644 index 0000000000..5e288ddf0b --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackIFrame.freeze @@ -0,0 +1 @@ +2023-10-23T21:48:27.854057-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackIFrame.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackIFrame.yaml new file mode 100644 index 0000000000..456406f8ac --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackIFrame.yaml @@ -0,0 +1,106 @@ +--- +version: 1 +interactions: +- request: + body: | + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackIFrame-local-1698111760","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"}}]}},"name":"tf-TestAccDatadogPowerpackIFrame-local-1698111760","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks + method: POST + response: + body: | + {"data":{"type":"powerpack","id":"9fdfe58e-720e-11ee-81af-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackIFrame-local-1698111760","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackIFrame-local-1698111760","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":6088383163999014}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/9fdfe58e-720e-11ee-81af-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"9fdfe58e-720e-11ee-81af-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackIFrame-local-1698111760","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackIFrame-local-1698111760","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":6088383163999014}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/9fdfe58e-720e-11ee-81af-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"9fdfe58e-720e-11ee-81af-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackIFrame-local-1698111760","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackIFrame-local-1698111760","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":6088383163999014}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/9fdfe58e-720e-11ee-81af-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"9fdfe58e-720e-11ee-81af-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackIFrame-local-1698111760","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackIFrame-local-1698111760","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":6088383163999014}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - '*/*' + url: https://api.datadoghq.com/api/v2/powerpacks/9fdfe58e-720e-11ee-81af-da7ad0900002 + method: DELETE + response: + body: "" + headers: + Content-Type: + - text/html; charset=utf-8 + status: 204 No Content + code: 204 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/9fdfe58e-720e-11ee-81af-da7ad0900002 + method: GET + response: + body: '{"errors":["Powerpack with ID 9fdfe58e-720e-11ee-81af-da7ad0900002 not found"]}' + headers: + Content-Type: + - application/json + status: 404 Not Found + code: 404 + duration: "" diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackImage.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackImage.freeze new file mode 100644 index 0000000000..399af65f93 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackImage.freeze @@ -0,0 +1 @@ +2023-10-23T21:48:27.853705-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackImage.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackImage.yaml new file mode 100644 index 0000000000..2939f0332e --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackImage.yaml @@ -0,0 +1,106 @@ +--- +version: 1 +interactions: +- request: + body: | + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackImage-local-1698111944","type":"group","widgets":[{"definition":{"has_background":true,"has_border":true,"margin":"small","sizing":"fit","type":"image","url":"https://google.com"}}]}},"name":"tf-TestAccDatadogPowerpackImage-local-1698111944","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks + method: POST + response: + body: | + {"data":{"type":"powerpack","id":"0d617244-720f-11ee-bdbd-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackImage-local-1698111944","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackImage-local-1698111944","type":"group","widgets":[{"definition":{"has_background":true,"has_border":true,"margin":"small","sizing":"fit","type":"image","url":"https://google.com"},"id":2658148582171667}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/0d617244-720f-11ee-bdbd-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"0d617244-720f-11ee-bdbd-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackImage-local-1698111944","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackImage-local-1698111944","type":"group","widgets":[{"definition":{"has_background":true,"has_border":true,"margin":"small","sizing":"fit","type":"image","url":"https://google.com"},"id":2658148582171667}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/0d617244-720f-11ee-bdbd-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"0d617244-720f-11ee-bdbd-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackImage-local-1698111944","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackImage-local-1698111944","type":"group","widgets":[{"definition":{"has_background":true,"has_border":true,"margin":"small","sizing":"fit","type":"image","url":"https://google.com"},"id":2658148582171667}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/0d617244-720f-11ee-bdbd-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"0d617244-720f-11ee-bdbd-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackImage-local-1698111944","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackImage-local-1698111944","type":"group","widgets":[{"definition":{"has_background":true,"has_border":true,"margin":"small","sizing":"fit","type":"image","url":"https://google.com"},"id":2658148582171667}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - '*/*' + url: https://api.datadoghq.com/api/v2/powerpacks/0d617244-720f-11ee-bdbd-da7ad0900002 + method: DELETE + response: + body: "" + headers: + Content-Type: + - text/html; charset=utf-8 + status: 204 No Content + code: 204 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/0d617244-720f-11ee-bdbd-da7ad0900002 + method: GET + response: + body: '{"errors":["Powerpack with ID 0d617244-720f-11ee-bdbd-da7ad0900002 not found"]}' + headers: + Content-Type: + - application/json + status: 404 Not Found + code: 404 + duration: "" diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackServicemap.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackServicemap.freeze new file mode 100644 index 0000000000..bb6c26cdc3 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackServicemap.freeze @@ -0,0 +1 @@ +2023-10-23T21:48:31.971234-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackServicemap.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackServicemap.yaml new file mode 100644 index 0000000000..a8c73d2cb5 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackServicemap.yaml @@ -0,0 +1,106 @@ +--- +version: 1 +interactions: +- request: + body: | + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackServicemap-local-1698112111","type":"group","widgets":[{"definition":{"filters":["env:prod"],"service":"master-db","title":"env: prod, datacenter:dc1, service: master-db","title_align":"left","title_size":"16","type":"servicemap"}}]}},"name":"tf-TestAccDatadogPowerpackServicemap-local-1698112111","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks + method: POST + response: + body: | + {"data":{"type":"powerpack","id":"71bc1654-720f-11ee-8406-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackServicemap-local-1698112111","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackServicemap-local-1698112111","type":"group","widgets":[{"definition":{"filters":["env:prod"],"service":"master-db","title":"env: prod, datacenter:dc1, service: master-db","title_align":"left","title_size":"16","type":"servicemap"},"id":8352559437743329}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/71bc1654-720f-11ee-8406-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"71bc1654-720f-11ee-8406-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackServicemap-local-1698112111","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackServicemap-local-1698112111","type":"group","widgets":[{"definition":{"filters":["env:prod"],"service":"master-db","title":"env: prod, datacenter:dc1, service: master-db","title_align":"left","title_size":"16","type":"servicemap"},"id":8352559437743329}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/71bc1654-720f-11ee-8406-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"71bc1654-720f-11ee-8406-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackServicemap-local-1698112111","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackServicemap-local-1698112111","type":"group","widgets":[{"definition":{"filters":["env:prod"],"service":"master-db","title":"env: prod, datacenter:dc1, service: master-db","title_align":"left","title_size":"16","type":"servicemap"},"id":8352559437743329}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/71bc1654-720f-11ee-8406-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"71bc1654-720f-11ee-8406-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackServicemap-local-1698112111","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackServicemap-local-1698112111","type":"group","widgets":[{"definition":{"filters":["env:prod"],"service":"master-db","title":"env: prod, datacenter:dc1, service: master-db","title_align":"left","title_size":"16","type":"servicemap"},"id":8352559437743329}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - '*/*' + url: https://api.datadoghq.com/api/v2/powerpacks/71bc1654-720f-11ee-8406-da7ad0900002 + method: DELETE + response: + body: "" + headers: + Content-Type: + - text/html; charset=utf-8 + status: 204 No Content + code: 204 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/71bc1654-720f-11ee-8406-da7ad0900002 + method: GET + response: + body: '{"errors":["Powerpack with ID 71bc1654-720f-11ee-8406-da7ad0900002 not found"]}' + headers: + Content-Type: + - application/json + status: 404 Not Found + code: 404 + duration: "" diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpack_update.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpack_update.freeze index 46837facb4..1ae5023983 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpack_update.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpack_update.freeze @@ -1 +1 @@ -2023-10-23T21:22:01.57971-04:00 \ No newline at end of file +2023-10-23T21:48:27.853648-04:00 \ No newline at end of file diff --git a/datadog/tests/provider_test.go b/datadog/tests/provider_test.go index 8eb10d48c2..e4e79fbfd9 100644 --- a/datadog/tests/provider_test.go +++ b/datadog/tests/provider_test.go @@ -134,7 +134,12 @@ var testFiles2EndpointTags = map[string]string{ "tests/resource_datadog_dashboard_trace_service_test": "dashboards", "tests/resource_datadog_dashboard_treemap_test": "dashboards", "tests/resource_datadog_powerpack_test": "powerpacks", + "tests/resource_datadog_powerpack_alert_graph_test": "powerpacks", + "tests/resource_datadog_powerpack_check_status_test": "powerpacks", + "tests/resource_datadog_powerpack_iframe_test": "powerpacks", + "tests/resource_datadog_powerpack_image_test": "powerpacks", "tests/resource_datadog_powerpack_free_text_test": "powerpacks", + "tests/resource_datadog_powerpack_servicemap_test": "powerpacks", "tests/resource_datadog_downtime_test": "downtimes", "tests/resource_datadog_downtime_schedule_test": "downtimes", "tests/resource_datadog_integration_aws_lambda_arn_test": "integration-aws", diff --git a/datadog/tests/resource_datadog_powerpack_alert_graph_test.go b/datadog/tests/resource_datadog_powerpack_alert_graph_test.go new file mode 100644 index 0000000000..b9e8c9290a --- /dev/null +++ b/datadog/tests/resource_datadog_powerpack_alert_graph_test.go @@ -0,0 +1,50 @@ +package test + +import ( + "testing" +) + +const datadogPowerpackAlertGraphTest = ` +resource "datadog_powerpack" "alert_graph_powerpack" { + name = "{{uniq}}" + tags = ["tag:foo1"] + description = "Created using the Datadog provider in Terraform" + template_variables { + defaults = ["defaults"] + name = "datacenter" + } + widget { + alert_graph_definition { + alert_id = "895605" + viz_type = "timeseries" + title = "Widget Title" + title_align = "center" + title_size = "20" + } + } +} +` + +var datadogPowerpackAlertGraphTestAsserts = []string{ + // Powerpack metadata + "description = Created using the Datadog provider in Terraform", + "widget.# = 1", + "tags.# = 1", + "tags.0 = tag:foo1", + // Alert Graph widget + "widget.0.alert_graph_definition.0.alert_id = 895605", + "widget.0.alert_graph_definition.0.viz_type = timeseries", + "widget.0.alert_graph_definition.0.title = Widget Title", + "widget.0.alert_graph_definition.0.title_align = center", + "widget.0.alert_graph_definition.0.title_size = 20", + + // Template Variables + "template_variables.# = 1", + "template_variables.0.name = datacenter", + "template_variables.0.defaults.# = 1", + "template_variables.0.defaults.0 = defaults", +} + +func TestAccDatadogPowerpackAlertGraph(t *testing.T) { + testAccDatadogPowerpackWidgetUtil(t, datadogPowerpackAlertGraphTest, "datadog_powerpack.alert_graph_powerpack", datadogPowerpackAlertGraphTestAsserts) +} diff --git a/datadog/tests/resource_datadog_powerpack_check_status_test.go b/datadog/tests/resource_datadog_powerpack_check_status_test.go new file mode 100644 index 0000000000..cada2ffb67 --- /dev/null +++ b/datadog/tests/resource_datadog_powerpack_check_status_test.go @@ -0,0 +1,42 @@ +package test + +import ( + "testing" +) + +const datadogPowerpackCheckStatusTest = ` +resource "datadog_powerpack" "check_status_powerpack" { + name = "{{uniq}}" + tags = ["tag:foo1"] + description = "Created using the Datadog provider in Terraform" + + widget { + check_status_definition { + check = "aws.ecs.agent_connected" + grouping = "cluster" + group_by = ["account", "cluster"] + tags = ["account:demo", "cluster:awseb-ruthebdog-env-8-dn3m6u3gvk"] + title = "Widget Title!!" + } + } +} +` + +var datadogPowerpackCheckStatusTestAsserts = []string{ + "tags.# = 1", + "tags.0 = tag:foo1", + "description = Created using the Datadog provider in Terraform", + "widget.0.check_status_definition.0.check = aws.ecs.agent_connected", + "widget.0.check_status_definition.0.grouping = cluster", + "widget.0.check_status_definition.0.group_by.# = 2", + "widget.0.check_status_definition.0.group_by.0 = account", + "widget.0.check_status_definition.0.group_by.1 = cluster", + "widget.0.check_status_definition.0.tags.# = 2", + "widget.0.check_status_definition.0.tags.0 = account:demo", + "widget.0.check_status_definition.0.tags.1 = cluster:awseb-ruthebdog-env-8-dn3m6u3gvk", + "widget.0.check_status_definition.0.title = Widget Title!!", +} + +func TestAccDatadogPowerpackCheckStatus(t *testing.T) { + testAccDatadogPowerpackWidgetUtil(t, datadogPowerpackCheckStatusTest, "datadog_powerpack.check_status_powerpack", datadogPowerpackCheckStatusTestAsserts) +} diff --git a/datadog/tests/resource_datadog_powerpack_iframe_test.go b/datadog/tests/resource_datadog_powerpack_iframe_test.go new file mode 100644 index 0000000000..ee76106c96 --- /dev/null +++ b/datadog/tests/resource_datadog_powerpack_iframe_test.go @@ -0,0 +1,41 @@ +package test + +import ( + "testing" +) + +const datadogPowerpackIFrameTest = ` +resource "datadog_powerpack" "iframe_powerpack" { + name = "{{uniq}}" + tags = ["tag:foo1"] + description = "Created using the Datadog provider in Terraform" + template_variables { + defaults = ["defaults"] + name = "datacenter" + } + widget { + iframe_definition { + url = "https://google.com" + } + } +} +` + +var datadogPowerpackIFrameTestAsserts = []string{ + // Powerpack metadata + "description = Created using the Datadog provider in Terraform", + "widget.# = 1", + "tags.# = 1", + "tags.0 = tag:foo1", + // IFrame widget + "widget.0.iframe_definition.0.url = https://google.com", + // Template Variables + "template_variables.# = 1", + "template_variables.0.name = datacenter", + "template_variables.0.defaults.# = 1", + "template_variables.0.defaults.0 = defaults", +} + +func TestAccDatadogPowerpackIFrame(t *testing.T) { + testAccDatadogPowerpackWidgetUtil(t, datadogPowerpackIFrameTest, "datadog_powerpack.iframe_powerpack", datadogPowerpackIFrameTestAsserts) +} diff --git a/datadog/tests/resource_datadog_powerpack_image_test.go b/datadog/tests/resource_datadog_powerpack_image_test.go new file mode 100644 index 0000000000..d29ed3709c --- /dev/null +++ b/datadog/tests/resource_datadog_powerpack_image_test.go @@ -0,0 +1,46 @@ +package test + +import ( + "testing" +) + +const datadogPowerpackImageTest = ` +resource "datadog_powerpack" "image_powerpack" { + name = "{{uniq}}" + tags = ["tag:foo1"] + description = "Created using the Datadog provider in Terraform" + template_variables { + defaults = ["defaults"] + name = "datacenter" + } + widget { + image_definition { + url = "https://google.com" + sizing = "fit" + margin = "small" + } + } +} +` + +var datadogPowerpackImageTestAsserts = []string{ + // Powerpack metadata + "description = Created using the Datadog provider in Terraform", + "widget.# = 1", + "tags.# = 1", + "tags.0 = tag:foo1", + // Image widget + "widget.0.image_definition.0.url = https://google.com", + "widget.0.image_definition.0.sizing = fit", + "widget.0.image_definition.0.margin = small", + + // Template Variables + "template_variables.# = 1", + "template_variables.0.name = datacenter", + "template_variables.0.defaults.# = 1", + "template_variables.0.defaults.0 = defaults", +} + +func TestAccDatadogPowerpackImage(t *testing.T) { + testAccDatadogPowerpackWidgetUtil(t, datadogPowerpackImageTest, "datadog_powerpack.image_powerpack", datadogPowerpackImageTestAsserts) +} diff --git a/datadog/tests/resource_datadog_powerpack_servicemap_test.go b/datadog/tests/resource_datadog_powerpack_servicemap_test.go new file mode 100644 index 0000000000..a77c57b07d --- /dev/null +++ b/datadog/tests/resource_datadog_powerpack_servicemap_test.go @@ -0,0 +1,51 @@ +package test + +import ( + "testing" +) + +const datadogPowerpackServiceMapTest = ` +resource "datadog_powerpack" "servicemap_powerpack" { + name = "{{uniq}}" + tags = ["tag:foo1"] + description = "Created using the Datadog provider in Terraform" + template_variables { + defaults = ["defaults"] + name = "datacenter" + } + widget { + servicemap_definition { + service = "master-db" + filters = ["env:prod"] + title = "env: prod, datacenter:dc1, service: master-db" + title_size = "16" + title_align = "left" + } + } +} +` + +var datadogPowerpackServiceMapTestAsserts = []string{ + // Powerpack metadata + "description = Created using the Datadog provider in Terraform", + "widget.# = 1", + "tags.# = 1", + "tags.0 = tag:foo1", + // Servicemap widget + "widget.0.servicemap_definition.0.service = master-db", + "widget.0.servicemap_definition.0.filters.# = 1", + "widget.0.servicemap_definition.0.filters.0 = env:prod", + "widget.0.servicemap_definition.0.title = env: prod, datacenter:dc1, service: master-db", + "widget.0.servicemap_definition.0.title_size = 16", + "widget.0.servicemap_definition.0.title_align = left", + + // Template Variables + "template_variables.# = 1", + "template_variables.0.name = datacenter", + "template_variables.0.defaults.# = 1", + "template_variables.0.defaults.0 = defaults", +} + +func TestAccDatadogPowerpackServicemap(t *testing.T) { + testAccDatadogPowerpackWidgetUtil(t, datadogPowerpackServiceMapTest, "datadog_powerpack.servicemap_powerpack", datadogPowerpackServiceMapTestAsserts) +} From bdc287118e3276e651766c41b3659f31eabbcb77 Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Mon, 23 Oct 2023 22:06:13 -0400 Subject: [PATCH 07/48] add test for powerpack note widget --- .../TestAccDatadogPowerpackNote.freeze | 1 + .../TestAccDatadogPowerpackNote.yaml | 106 ++++++++++++++++++ datadog/tests/provider_test.go | 1 + .../resource_datadog_powerpack_note_test.go | 43 +++++++ 4 files changed, 151 insertions(+) create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackNote.freeze create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackNote.yaml create mode 100644 datadog/tests/resource_datadog_powerpack_note_test.go diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackNote.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackNote.freeze new file mode 100644 index 0000000000..b55f48b4cd --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackNote.freeze @@ -0,0 +1 @@ +2023-10-23T22:03:30.286513-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackNote.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackNote.yaml new file mode 100644 index 0000000000..a782f8a38e --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackNote.yaml @@ -0,0 +1,106 @@ +--- +version: 1 +interactions: +- request: + body: | + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackNote-local-1698113010","type":"group","widgets":[{"definition":{"background_color":"blue","content":"note widget","has_padding":true,"show_tick":false,"type":"note"}}]}},"name":"tf-TestAccDatadogPowerpackNote-local-1698113010","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks + method: POST + response: + body: | + {"data":{"type":"powerpack","id":"884ae79a-7211-11ee-863f-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackNote-local-1698113010","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackNote-local-1698113010","type":"group","widgets":[{"definition":{"background_color":"blue","content":"note widget","has_padding":true,"show_tick":false,"type":"note"},"id":8782826849165663}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/884ae79a-7211-11ee-863f-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"884ae79a-7211-11ee-863f-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackNote-local-1698113010","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackNote-local-1698113010","type":"group","widgets":[{"definition":{"background_color":"blue","content":"note widget","has_padding":true,"show_tick":false,"type":"note"},"id":8782826849165663}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/884ae79a-7211-11ee-863f-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"884ae79a-7211-11ee-863f-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackNote-local-1698113010","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackNote-local-1698113010","type":"group","widgets":[{"definition":{"background_color":"blue","content":"note widget","has_padding":true,"show_tick":false,"type":"note"},"id":8782826849165663}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/884ae79a-7211-11ee-863f-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"884ae79a-7211-11ee-863f-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackNote-local-1698113010","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackNote-local-1698113010","type":"group","widgets":[{"definition":{"background_color":"blue","content":"note widget","has_padding":true,"show_tick":false,"type":"note"},"id":8782826849165663}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - '*/*' + url: https://api.datadoghq.com/api/v2/powerpacks/884ae79a-7211-11ee-863f-da7ad0900002 + method: DELETE + response: + body: "" + headers: + Content-Type: + - text/html; charset=utf-8 + status: 204 No Content + code: 204 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/884ae79a-7211-11ee-863f-da7ad0900002 + method: GET + response: + body: '{"errors":["Powerpack with ID 884ae79a-7211-11ee-863f-da7ad0900002 not found"]}' + headers: + Content-Type: + - application/json + status: 404 Not Found + code: 404 + duration: "" diff --git a/datadog/tests/provider_test.go b/datadog/tests/provider_test.go index e4e79fbfd9..129612b61b 100644 --- a/datadog/tests/provider_test.go +++ b/datadog/tests/provider_test.go @@ -139,6 +139,7 @@ var testFiles2EndpointTags = map[string]string{ "tests/resource_datadog_powerpack_iframe_test": "powerpacks", "tests/resource_datadog_powerpack_image_test": "powerpacks", "tests/resource_datadog_powerpack_free_text_test": "powerpacks", + "tests/resource_datadog_powerpack_note_test": "powerpacks", "tests/resource_datadog_powerpack_servicemap_test": "powerpacks", "tests/resource_datadog_downtime_test": "downtimes", "tests/resource_datadog_downtime_schedule_test": "downtimes", diff --git a/datadog/tests/resource_datadog_powerpack_note_test.go b/datadog/tests/resource_datadog_powerpack_note_test.go new file mode 100644 index 0000000000..c86f3c246c --- /dev/null +++ b/datadog/tests/resource_datadog_powerpack_note_test.go @@ -0,0 +1,43 @@ +package test + +import ( + "testing" +) + +const datadogPowerpackNoteTest = ` +resource "datadog_powerpack" "note_powerpack" { + name = "{{uniq}}" + tags = ["tag:foo1"] + description = "Created using the Datadog provider in Terraform" + template_variables { + defaults = ["defaults"] + name = "datacenter" + } + widget { + note_definition { + content = "note widget" + background_color = "blue" + } + } +} +` + +var datadogPowerpackNoteTestAsserts = []string{ + // Powerpack metadata + "description = Created using the Datadog provider in Terraform", + "widget.# = 1", + "tags.# = 1", + "tags.0 = tag:foo1", + // Note widget + "widget.0.note_definition.0.content = note widget", + "widget.0.note_definition.0.background_color = blue", + // Template Variables + "template_variables.# = 1", + "template_variables.0.name = datacenter", + "template_variables.0.defaults.# = 1", + "template_variables.0.defaults.0 = defaults", +} + +func TestAccDatadogPowerpackNote(t *testing.T) { + testAccDatadogPowerpackWidgetUtil(t, datadogPowerpackNoteTest, "datadog_powerpack.note_powerpack", datadogPowerpackNoteTestAsserts) +} From bec4b709e085aa8c2dc33c25a826c95cd6ebf9a9 Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Mon, 23 Oct 2023 22:08:20 -0400 Subject: [PATCH 08/48] remove commented out code --- datadog/resource_datadog_powerpack.go | 4 ---- 1 file changed, 4 deletions(-) diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index 38e79b5932..e11a263706 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -327,10 +327,6 @@ func dashboardWidgetsToPpkWidgets(terraformWidgets *[]map[string]interface{}) ([ continue } if widgetType == "widget_layout" { - //diags = append(diags, diag.Diagnostic{ - // Severity: diag.Error, - // Summary: fmt.Sprintf("terraformDefinition: %s", terraformDefinition), - //}) dimensions := terraformDefinition.([]map[string]interface{})[0] height := dimensions["height"].(int64) width := dimensions["width"].(int64) From 81cf591876adafebaf7f0aff9fbc45accc3df7af Mon Sep 17 00:00:00 2001 From: Kevin Zou Date: Tue, 24 Oct 2023 13:02:07 -0400 Subject: [PATCH 09/48] rerecord cassettes with non-matching timestamps --- .../TestAccDatadogPowerpackAlertGraph.freeze | 2 +- .../TestAccDatadogPowerpackAlertGraph.yaml | 22 +++++++++---------- .../TestAccDatadogPowerpackCheckStatus.freeze | 2 +- .../TestAccDatadogPowerpackCheckStatus.yaml | 22 +++++++++---------- .../TestAccDatadogPowerpackFreeText.freeze | 2 +- .../TestAccDatadogPowerpackFreeText.yaml | 22 +++++++++---------- .../TestAccDatadogPowerpackIFrame.freeze | 2 +- .../TestAccDatadogPowerpackIFrame.yaml | 22 +++++++++---------- .../TestAccDatadogPowerpackImage.freeze | 2 +- .../TestAccDatadogPowerpackImage.yaml | 22 +++++++++---------- .../TestAccDatadogPowerpack_update.freeze | 2 +- .../TestAccDatadogPowerpack_update.yaml | 22 +++++++++---------- 12 files changed, 72 insertions(+), 72 deletions(-) diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.freeze index 11020e7fb5..8171ec005f 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.freeze @@ -1 +1 @@ -2023-10-23T21:48:27.85447-04:00 \ No newline at end of file +2023-10-24T13:00:19.993039-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.yaml index 5239a57d90..f5ddd51801 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.yaml +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.yaml @@ -3,7 +3,7 @@ version: 1 interactions: - request: body: | - {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698111922","type":"group","widgets":[{"definition":{"alert_id":"895605","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"}}]}},"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698111922","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698166819","type":"group","widgets":[{"definition":{"alert_id":"895605","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"}}]}},"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698166819","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} form: {} headers: Accept: @@ -14,7 +14,7 @@ interactions: method: POST response: body: | - {"data":{"type":"powerpack","id":"00b65f3c-720f-11ee-8788-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698111922","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698111922","type":"group","widgets":[{"definition":{"alert_id":"895605","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"},"id":7119659130114370}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"d2de801e-728e-11ee-8d1f-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698166819","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698166819","type":"group","widgets":[{"definition":{"alert_id":"895605","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"},"id":1754374040124311}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -27,11 +27,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/00b65f3c-720f-11ee-8788-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/d2de801e-728e-11ee-8d1f-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"00b65f3c-720f-11ee-8788-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698111922","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698111922","type":"group","widgets":[{"definition":{"alert_id":"895605","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"},"id":7119659130114370}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"d2de801e-728e-11ee-8d1f-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698166819","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698166819","type":"group","widgets":[{"definition":{"alert_id":"895605","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"},"id":1754374040124311}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -44,11 +44,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/00b65f3c-720f-11ee-8788-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/d2de801e-728e-11ee-8d1f-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"00b65f3c-720f-11ee-8788-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698111922","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698111922","type":"group","widgets":[{"definition":{"alert_id":"895605","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"},"id":7119659130114370}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"d2de801e-728e-11ee-8d1f-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698166819","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698166819","type":"group","widgets":[{"definition":{"alert_id":"895605","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"},"id":1754374040124311}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -61,11 +61,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/00b65f3c-720f-11ee-8788-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/d2de801e-728e-11ee-8d1f-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"00b65f3c-720f-11ee-8788-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698111922","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698111922","type":"group","widgets":[{"definition":{"alert_id":"895605","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"},"id":7119659130114370}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"d2de801e-728e-11ee-8d1f-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698166819","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698166819","type":"group","widgets":[{"definition":{"alert_id":"895605","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"},"id":1754374040124311}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -78,7 +78,7 @@ interactions: headers: Accept: - '*/*' - url: https://api.datadoghq.com/api/v2/powerpacks/00b65f3c-720f-11ee-8788-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/d2de801e-728e-11ee-8d1f-da7ad0900002 method: DELETE response: body: "" @@ -94,10 +94,10 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/00b65f3c-720f-11ee-8788-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/d2de801e-728e-11ee-8d1f-da7ad0900002 method: GET response: - body: '{"errors":["Powerpack with ID 00b65f3c-720f-11ee-8788-da7ad0900002 not found"]}' + body: '{"errors":["Powerpack with ID d2de801e-728e-11ee-8d1f-da7ad0900002 not found"]}' headers: Content-Type: - application/json diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackCheckStatus.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackCheckStatus.freeze index 04e1b44053..3b0b924d0b 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackCheckStatus.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackCheckStatus.freeze @@ -1 +1 @@ -2023-10-23T21:48:27.854248-04:00 \ No newline at end of file +2023-10-24T13:00:19.997083-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackCheckStatus.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackCheckStatus.yaml index 552ecfcd92..2d4214a4b3 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackCheckStatus.yaml +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackCheckStatus.yaml @@ -3,7 +3,7 @@ version: 1 interactions: - request: body: | - {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackCheckStatus-local-1698111212","type":"group","widgets":[{"definition":{"check":"aws.ecs.agent_connected","group_by":["account","cluster"],"grouping":"cluster","tags":["account:demo","cluster:awseb-ruthebdog-env-8-dn3m6u3gvk"],"title":"Widget Title!!","type":"check_status"}}]}},"name":"tf-TestAccDatadogPowerpackCheckStatus-local-1698111212","tags":["tag:foo1"]},"type":"powerpack"}} + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackCheckStatus-local-1698166819","type":"group","widgets":[{"definition":{"check":"aws.ecs.agent_connected","group_by":["account","cluster"],"grouping":"cluster","tags":["account:demo","cluster:awseb-ruthebdog-env-8-dn3m6u3gvk"],"title":"Widget Title!!","type":"check_status"}}]}},"name":"tf-TestAccDatadogPowerpackCheckStatus-local-1698166819","tags":["tag:foo1"]},"type":"powerpack"}} form: {} headers: Accept: @@ -14,7 +14,7 @@ interactions: method: POST response: body: | - {"data":{"type":"powerpack","id":"5943475c-720d-11ee-ad19-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackCheckStatus-local-1698111212","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackCheckStatus-local-1698111212","type":"group","widgets":[{"definition":{"check":"aws.ecs.agent_connected","group_by":["account","cluster"],"grouping":"cluster","tags":["account:demo","cluster:awseb-ruthebdog-env-8-dn3m6u3gvk"],"title":"Widget Title!!","type":"check_status"},"id":2742876869325049}]}},"template_variables":null,"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"d2cb468e-728e-11ee-8152-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackCheckStatus-local-1698166819","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackCheckStatus-local-1698166819","type":"group","widgets":[{"definition":{"check":"aws.ecs.agent_connected","group_by":["account","cluster"],"grouping":"cluster","tags":["account:demo","cluster:awseb-ruthebdog-env-8-dn3m6u3gvk"],"title":"Widget Title!!","type":"check_status"},"id":4359315513991062}]}},"template_variables":null,"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -27,11 +27,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/5943475c-720d-11ee-ad19-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/d2cb468e-728e-11ee-8152-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"5943475c-720d-11ee-ad19-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackCheckStatus-local-1698111212","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackCheckStatus-local-1698111212","type":"group","widgets":[{"definition":{"check":"aws.ecs.agent_connected","group_by":["account","cluster"],"grouping":"cluster","tags":["account:demo","cluster:awseb-ruthebdog-env-8-dn3m6u3gvk"],"title":"Widget Title!!","type":"check_status"},"id":2742876869325049}]}},"template_variables":null,"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"d2cb468e-728e-11ee-8152-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackCheckStatus-local-1698166819","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackCheckStatus-local-1698166819","type":"group","widgets":[{"definition":{"check":"aws.ecs.agent_connected","group_by":["account","cluster"],"grouping":"cluster","tags":["account:demo","cluster:awseb-ruthebdog-env-8-dn3m6u3gvk"],"title":"Widget Title!!","type":"check_status"},"id":4359315513991062}]}},"template_variables":null,"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -44,11 +44,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/5943475c-720d-11ee-ad19-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/d2cb468e-728e-11ee-8152-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"5943475c-720d-11ee-ad19-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackCheckStatus-local-1698111212","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackCheckStatus-local-1698111212","type":"group","widgets":[{"definition":{"check":"aws.ecs.agent_connected","group_by":["account","cluster"],"grouping":"cluster","tags":["account:demo","cluster:awseb-ruthebdog-env-8-dn3m6u3gvk"],"title":"Widget Title!!","type":"check_status"},"id":2742876869325049}]}},"template_variables":null,"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"d2cb468e-728e-11ee-8152-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackCheckStatus-local-1698166819","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackCheckStatus-local-1698166819","type":"group","widgets":[{"definition":{"check":"aws.ecs.agent_connected","group_by":["account","cluster"],"grouping":"cluster","tags":["account:demo","cluster:awseb-ruthebdog-env-8-dn3m6u3gvk"],"title":"Widget Title!!","type":"check_status"},"id":4359315513991062}]}},"template_variables":null,"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -61,11 +61,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/5943475c-720d-11ee-ad19-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/d2cb468e-728e-11ee-8152-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"5943475c-720d-11ee-ad19-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackCheckStatus-local-1698111212","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackCheckStatus-local-1698111212","type":"group","widgets":[{"definition":{"check":"aws.ecs.agent_connected","group_by":["account","cluster"],"grouping":"cluster","tags":["account:demo","cluster:awseb-ruthebdog-env-8-dn3m6u3gvk"],"title":"Widget Title!!","type":"check_status"},"id":2742876869325049}]}},"template_variables":null,"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"d2cb468e-728e-11ee-8152-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackCheckStatus-local-1698166819","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackCheckStatus-local-1698166819","type":"group","widgets":[{"definition":{"check":"aws.ecs.agent_connected","group_by":["account","cluster"],"grouping":"cluster","tags":["account:demo","cluster:awseb-ruthebdog-env-8-dn3m6u3gvk"],"title":"Widget Title!!","type":"check_status"},"id":4359315513991062}]}},"template_variables":null,"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -78,7 +78,7 @@ interactions: headers: Accept: - '*/*' - url: https://api.datadoghq.com/api/v2/powerpacks/5943475c-720d-11ee-ad19-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/d2cb468e-728e-11ee-8152-da7ad0900002 method: DELETE response: body: "" @@ -94,10 +94,10 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/5943475c-720d-11ee-ad19-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/d2cb468e-728e-11ee-8152-da7ad0900002 method: GET response: - body: '{"errors":["Powerpack with ID 5943475c-720d-11ee-ad19-da7ad0900002 not found"]}' + body: '{"errors":["Powerpack with ID d2cb468e-728e-11ee-8152-da7ad0900002 not found"]}' headers: Content-Type: - application/json diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.freeze index 4a2b2d958d..0ab2aca3f2 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.freeze @@ -1 +1 @@ -2023-10-23T21:48:27.853921-04:00 \ No newline at end of file +2023-10-24T13:00:19.991432-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.yaml index b81e354715..6b203f1750 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.yaml +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.yaml @@ -3,7 +3,7 @@ version: 1 interactions: - request: body: | - {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackFreeText-local-1698110524","type":"group","widgets":[{"definition":{"color":"#eb364b","font_size":"56","text":"Free Text","text_align":"left","type":"free_text"},"layout":{"height":4,"width":5,"x":5,"y":5}}]}},"name":"tf-TestAccDatadogPowerpackFreeText-local-1698110524","tags":["tag:foo1"]},"type":"powerpack"}} + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackFreeText-local-1698166819","type":"group","widgets":[{"definition":{"color":"#eb364b","font_size":"56","text":"Free Text","text_align":"left","type":"free_text"},"layout":{"height":4,"width":5,"x":5,"y":5}}]}},"name":"tf-TestAccDatadogPowerpackFreeText-local-1698166819","tags":["tag:foo1"]},"type":"powerpack"}} form: {} headers: Accept: @@ -14,7 +14,7 @@ interactions: method: POST response: body: | - {"data":{"type":"powerpack","id":"bec03ae2-720b-11ee-8fc2-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackFreeText-local-1698110524","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackFreeText-local-1698110524","type":"group","widgets":[{"definition":{"color":"#eb364b","font_size":"56","text":"Free Text","text_align":"left","type":"free_text"},"layout":{"height":4,"width":5,"x":5,"y":5},"id":2016972070292012}]}},"template_variables":null,"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"d2daa4da-728e-11ee-8af8-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackFreeText-local-1698166819","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackFreeText-local-1698166819","type":"group","widgets":[{"definition":{"color":"#eb364b","font_size":"56","text":"Free Text","text_align":"left","type":"free_text"},"layout":{"height":4,"width":5,"x":5,"y":5},"id":6794477441982770}]}},"template_variables":null,"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -27,11 +27,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/bec03ae2-720b-11ee-8fc2-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/d2daa4da-728e-11ee-8af8-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"bec03ae2-720b-11ee-8fc2-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackFreeText-local-1698110524","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackFreeText-local-1698110524","type":"group","widgets":[{"definition":{"color":"#eb364b","font_size":"56","text":"Free Text","text_align":"left","type":"free_text"},"layout":{"height":4,"width":5,"x":5,"y":5},"id":2016972070292012}]}},"template_variables":null,"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"d2daa4da-728e-11ee-8af8-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackFreeText-local-1698166819","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackFreeText-local-1698166819","type":"group","widgets":[{"definition":{"color":"#eb364b","font_size":"56","text":"Free Text","text_align":"left","type":"free_text"},"layout":{"height":4,"width":5,"x":5,"y":5},"id":6794477441982770}]}},"template_variables":null,"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -44,11 +44,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/bec03ae2-720b-11ee-8fc2-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/d2daa4da-728e-11ee-8af8-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"bec03ae2-720b-11ee-8fc2-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackFreeText-local-1698110524","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackFreeText-local-1698110524","type":"group","widgets":[{"definition":{"color":"#eb364b","font_size":"56","text":"Free Text","text_align":"left","type":"free_text"},"layout":{"height":4,"width":5,"x":5,"y":5},"id":2016972070292012}]}},"template_variables":null,"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"d2daa4da-728e-11ee-8af8-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackFreeText-local-1698166819","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackFreeText-local-1698166819","type":"group","widgets":[{"definition":{"color":"#eb364b","font_size":"56","text":"Free Text","text_align":"left","type":"free_text"},"layout":{"height":4,"width":5,"x":5,"y":5},"id":6794477441982770}]}},"template_variables":null,"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -61,11 +61,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/bec03ae2-720b-11ee-8fc2-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/d2daa4da-728e-11ee-8af8-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"bec03ae2-720b-11ee-8fc2-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackFreeText-local-1698110524","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackFreeText-local-1698110524","type":"group","widgets":[{"definition":{"color":"#eb364b","font_size":"56","text":"Free Text","text_align":"left","type":"free_text"},"layout":{"height":4,"width":5,"x":5,"y":5},"id":2016972070292012}]}},"template_variables":null,"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"d2daa4da-728e-11ee-8af8-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackFreeText-local-1698166819","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackFreeText-local-1698166819","type":"group","widgets":[{"definition":{"color":"#eb364b","font_size":"56","text":"Free Text","text_align":"left","type":"free_text"},"layout":{"height":4,"width":5,"x":5,"y":5},"id":6794477441982770}]}},"template_variables":null,"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -78,7 +78,7 @@ interactions: headers: Accept: - '*/*' - url: https://api.datadoghq.com/api/v2/powerpacks/bec03ae2-720b-11ee-8fc2-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/d2daa4da-728e-11ee-8af8-da7ad0900002 method: DELETE response: body: "" @@ -94,10 +94,10 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/bec03ae2-720b-11ee-8fc2-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/d2daa4da-728e-11ee-8af8-da7ad0900002 method: GET response: - body: '{"errors":["Powerpack with ID bec03ae2-720b-11ee-8fc2-da7ad0900002 not found"]}' + body: '{"errors":["Powerpack with ID d2daa4da-728e-11ee-8af8-da7ad0900002 not found"]}' headers: Content-Type: - application/json diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackIFrame.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackIFrame.freeze index 5e288ddf0b..6fd29d672c 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackIFrame.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackIFrame.freeze @@ -1 +1 @@ -2023-10-23T21:48:27.854057-04:00 \ No newline at end of file +2023-10-24T13:00:19.988239-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackIFrame.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackIFrame.yaml index 456406f8ac..1abe5b3ace 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackIFrame.yaml +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackIFrame.yaml @@ -3,7 +3,7 @@ version: 1 interactions: - request: body: | - {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackIFrame-local-1698111760","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"}}]}},"name":"tf-TestAccDatadogPowerpackIFrame-local-1698111760","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackIFrame-local-1698166819","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"}}]}},"name":"tf-TestAccDatadogPowerpackIFrame-local-1698166819","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} form: {} headers: Accept: @@ -14,7 +14,7 @@ interactions: method: POST response: body: | - {"data":{"type":"powerpack","id":"9fdfe58e-720e-11ee-81af-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackIFrame-local-1698111760","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackIFrame-local-1698111760","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":6088383163999014}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"d2d25f50-728e-11ee-b36b-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackIFrame-local-1698166819","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackIFrame-local-1698166819","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":3607879997390025}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -27,11 +27,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/9fdfe58e-720e-11ee-81af-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/d2d25f50-728e-11ee-b36b-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"9fdfe58e-720e-11ee-81af-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackIFrame-local-1698111760","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackIFrame-local-1698111760","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":6088383163999014}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"d2d25f50-728e-11ee-b36b-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackIFrame-local-1698166819","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackIFrame-local-1698166819","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":3607879997390025}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -44,11 +44,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/9fdfe58e-720e-11ee-81af-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/d2d25f50-728e-11ee-b36b-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"9fdfe58e-720e-11ee-81af-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackIFrame-local-1698111760","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackIFrame-local-1698111760","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":6088383163999014}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"d2d25f50-728e-11ee-b36b-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackIFrame-local-1698166819","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackIFrame-local-1698166819","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":3607879997390025}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -61,11 +61,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/9fdfe58e-720e-11ee-81af-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/d2d25f50-728e-11ee-b36b-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"9fdfe58e-720e-11ee-81af-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackIFrame-local-1698111760","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackIFrame-local-1698111760","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":6088383163999014}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"d2d25f50-728e-11ee-b36b-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackIFrame-local-1698166819","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackIFrame-local-1698166819","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":3607879997390025}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -78,7 +78,7 @@ interactions: headers: Accept: - '*/*' - url: https://api.datadoghq.com/api/v2/powerpacks/9fdfe58e-720e-11ee-81af-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/d2d25f50-728e-11ee-b36b-da7ad0900002 method: DELETE response: body: "" @@ -94,10 +94,10 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/9fdfe58e-720e-11ee-81af-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/d2d25f50-728e-11ee-b36b-da7ad0900002 method: GET response: - body: '{"errors":["Powerpack with ID 9fdfe58e-720e-11ee-81af-da7ad0900002 not found"]}' + body: '{"errors":["Powerpack with ID d2d25f50-728e-11ee-b36b-da7ad0900002 not found"]}' headers: Content-Type: - application/json diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackImage.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackImage.freeze index 399af65f93..fd109950e4 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackImage.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackImage.freeze @@ -1 +1 @@ -2023-10-23T21:48:27.853705-04:00 \ No newline at end of file +2023-10-24T13:00:19.991177-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackImage.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackImage.yaml index 2939f0332e..a7877032bc 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackImage.yaml +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackImage.yaml @@ -3,7 +3,7 @@ version: 1 interactions: - request: body: | - {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackImage-local-1698111944","type":"group","widgets":[{"definition":{"has_background":true,"has_border":true,"margin":"small","sizing":"fit","type":"image","url":"https://google.com"}}]}},"name":"tf-TestAccDatadogPowerpackImage-local-1698111944","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackImage-local-1698166819","type":"group","widgets":[{"definition":{"has_background":true,"has_border":true,"margin":"small","sizing":"fit","type":"image","url":"https://google.com"}}]}},"name":"tf-TestAccDatadogPowerpackImage-local-1698166819","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} form: {} headers: Accept: @@ -14,7 +14,7 @@ interactions: method: POST response: body: | - {"data":{"type":"powerpack","id":"0d617244-720f-11ee-bdbd-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackImage-local-1698111944","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackImage-local-1698111944","type":"group","widgets":[{"definition":{"has_background":true,"has_border":true,"margin":"small","sizing":"fit","type":"image","url":"https://google.com"},"id":2658148582171667}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"d2d41d4a-728e-11ee-8154-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackImage-local-1698166819","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackImage-local-1698166819","type":"group","widgets":[{"definition":{"has_background":true,"has_border":true,"margin":"small","sizing":"fit","type":"image","url":"https://google.com"},"id":4838932978245357}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -27,11 +27,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/0d617244-720f-11ee-bdbd-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/d2d41d4a-728e-11ee-8154-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"0d617244-720f-11ee-bdbd-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackImage-local-1698111944","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackImage-local-1698111944","type":"group","widgets":[{"definition":{"has_background":true,"has_border":true,"margin":"small","sizing":"fit","type":"image","url":"https://google.com"},"id":2658148582171667}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"d2d41d4a-728e-11ee-8154-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackImage-local-1698166819","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackImage-local-1698166819","type":"group","widgets":[{"definition":{"has_background":true,"has_border":true,"margin":"small","sizing":"fit","type":"image","url":"https://google.com"},"id":4838932978245357}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -44,11 +44,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/0d617244-720f-11ee-bdbd-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/d2d41d4a-728e-11ee-8154-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"0d617244-720f-11ee-bdbd-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackImage-local-1698111944","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackImage-local-1698111944","type":"group","widgets":[{"definition":{"has_background":true,"has_border":true,"margin":"small","sizing":"fit","type":"image","url":"https://google.com"},"id":2658148582171667}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"d2d41d4a-728e-11ee-8154-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackImage-local-1698166819","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackImage-local-1698166819","type":"group","widgets":[{"definition":{"has_background":true,"has_border":true,"margin":"small","sizing":"fit","type":"image","url":"https://google.com"},"id":4838932978245357}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -61,11 +61,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/0d617244-720f-11ee-bdbd-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/d2d41d4a-728e-11ee-8154-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"0d617244-720f-11ee-bdbd-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackImage-local-1698111944","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackImage-local-1698111944","type":"group","widgets":[{"definition":{"has_background":true,"has_border":true,"margin":"small","sizing":"fit","type":"image","url":"https://google.com"},"id":2658148582171667}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"d2d41d4a-728e-11ee-8154-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackImage-local-1698166819","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackImage-local-1698166819","type":"group","widgets":[{"definition":{"has_background":true,"has_border":true,"margin":"small","sizing":"fit","type":"image","url":"https://google.com"},"id":4838932978245357}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -78,7 +78,7 @@ interactions: headers: Accept: - '*/*' - url: https://api.datadoghq.com/api/v2/powerpacks/0d617244-720f-11ee-bdbd-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/d2d41d4a-728e-11ee-8154-da7ad0900002 method: DELETE response: body: "" @@ -94,10 +94,10 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/0d617244-720f-11ee-bdbd-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/d2d41d4a-728e-11ee-8154-da7ad0900002 method: GET response: - body: '{"errors":["Powerpack with ID 0d617244-720f-11ee-bdbd-da7ad0900002 not found"]}' + body: '{"errors":["Powerpack with ID d2d41d4a-728e-11ee-8154-da7ad0900002 not found"]}' headers: Content-Type: - application/json diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpack_update.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpack_update.freeze index 1ae5023983..0f669a32ce 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpack_update.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpack_update.freeze @@ -1 +1 @@ -2023-10-23T21:48:27.853648-04:00 \ No newline at end of file +2023-10-24T13:00:19.99514-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpack_update.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpack_update.yaml index b75c3b33fd..8520cd76e1 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpack_update.yaml +++ b/datadog/tests/cassettes/TestAccDatadogPowerpack_update.yaml @@ -3,7 +3,7 @@ version: 1 interactions: - request: body: | - {"data":{"attributes":{"description":"Test Powerpack","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpack_update-local-1698107525","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"}}]}},"name":"tf-TestAccDatadogPowerpack_update-local-1698107525","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + {"data":{"attributes":{"description":"Test Powerpack","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpack_update-local-1698166819","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"}}]}},"name":"tf-TestAccDatadogPowerpack_update-local-1698166819","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} form: {} headers: Accept: @@ -14,7 +14,7 @@ interactions: method: POST response: body: | - {"data":{"type":"powerpack","id":"c3497d14-7204-11ee-bd15-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpack_update-local-1698107525","description":"Test Powerpack","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpack_update-local-1698107525","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":7471808949109868}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"d2d6138e-728e-11ee-a404-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpack_update-local-1698166819","description":"Test Powerpack","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpack_update-local-1698166819","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":2591746836340385}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -27,11 +27,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/c3497d14-7204-11ee-bd15-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/d2d6138e-728e-11ee-a404-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"c3497d14-7204-11ee-bd15-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpack_update-local-1698107525","description":"Test Powerpack","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpack_update-local-1698107525","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":7471808949109868}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"d2d6138e-728e-11ee-a404-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpack_update-local-1698166819","description":"Test Powerpack","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpack_update-local-1698166819","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":2591746836340385}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -44,11 +44,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/c3497d14-7204-11ee-bd15-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/d2d6138e-728e-11ee-a404-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"c3497d14-7204-11ee-bd15-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpack_update-local-1698107525","description":"Test Powerpack","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpack_update-local-1698107525","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":7471808949109868}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"d2d6138e-728e-11ee-a404-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpack_update-local-1698166819","description":"Test Powerpack","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpack_update-local-1698166819","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":2591746836340385}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -61,11 +61,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/c3497d14-7204-11ee-bd15-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/d2d6138e-728e-11ee-a404-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"c3497d14-7204-11ee-bd15-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpack_update-local-1698107525","description":"Test Powerpack","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpack_update-local-1698107525","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":7471808949109868}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"d2d6138e-728e-11ee-a404-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpack_update-local-1698166819","description":"Test Powerpack","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpack_update-local-1698166819","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":2591746836340385}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -78,7 +78,7 @@ interactions: headers: Accept: - '*/*' - url: https://api.datadoghq.com/api/v2/powerpacks/c3497d14-7204-11ee-bd15-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/d2d6138e-728e-11ee-a404-da7ad0900002 method: DELETE response: body: "" @@ -94,10 +94,10 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/c3497d14-7204-11ee-bd15-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/d2d6138e-728e-11ee-a404-da7ad0900002 method: GET response: - body: '{"errors":["Powerpack with ID c3497d14-7204-11ee-bd15-da7ad0900002 not found"]}' + body: '{"errors":["Powerpack with ID d2d6138e-728e-11ee-a404-da7ad0900002 not found"]}' headers: Content-Type: - application/json From 0cf4cc38df260bb84cbe5fa9a851eaec565a997c Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Tue, 24 Oct 2023 16:44:48 -0400 Subject: [PATCH 10/48] support for event stream and trace service, live span for widgets --- datadog/resource_datadog_powerpack.go | 27 +++++++++++++++++++++++++-- go.mod | 2 +- go.sum | 12 ++++++++++++ 3 files changed, 38 insertions(+), 3 deletions(-) diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index e11a263706..f6bb32537f 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -35,6 +35,7 @@ func resourceDatadogPowerpack() *schema.Resource { Optional: true, Description: "The description of the powerpack.", }, + "live_span": getWidgetLiveSpanSchema(), "name": { Type: schema.TypeString, Optional: true, @@ -296,6 +297,19 @@ func buildDatadogPowerpack(ctx context.Context, d *schema.ResourceData) (*datado groupWidget.Definition = definition + // Set Live span for all powerpack widgets. + if v, ok := d.GetOk("live_span"); ok { + liveSpan, err := datadogV2.NewPowerpackGroupWidgetLiveSpanFromValue(v.(string)) + if err != nil { + diags = append(diags, diag.Diagnostic{ + Severity: diag.Error, + Summary: fmt.Sprintf("live_span is invalid: %s", v.(string)), + }) + return nil, diags + } + groupWidget.LiveSpan = liveSpan + } + attributes.GroupWidget = groupWidget req := datadogV2.NewPowerpackWithDefaults() @@ -319,7 +333,6 @@ func dashboardWidgetsToPpkWidgets(terraformWidgets *[]map[string]interface{}) ([ } widgetDef := make(map[string]interface{}) var widgetLayout *datadogV2.PowerpackInnerWidgetLayout - for widgetType, terraformDefinition := range terraformWidget { // Each terraform definition contains an ID field which is unused, // and a widget definition which we need to process @@ -339,6 +352,13 @@ func dashboardWidgetsToPpkWidgets(terraformWidgets *[]map[string]interface{}) ([ // a type with multiple underscores. To parse a valid type name, we take a substring up until the last // underscore. Ex: free_text_definition -> free_text, hostmap_definition -> hostmap widgetDef["type"] = widgetType[:strings.LastIndex(widgetType, "_")] + if widgetDef["live_span"] != nil { + diags = append(diags, diag.Diagnostic{ + Severity: diag.Error, + Summary: fmt.Sprintf("live_span must be set at the powerpack level and will be applied to all widgets"), + }) + return nil, diags + } } } widgetsDDItem := datadogV2.NewPowerpackInnerWidgets(widgetDef) @@ -369,6 +389,8 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) definition = datadogV1.AlertGraphWidgetDefinitionAsWidgetDefinition(buildDatadogAlertGraphDefinition(widgetDefinition)) case "check_status": definition = datadogV1.CheckStatusWidgetDefinitionAsWidgetDefinition(buildDatadogCheckStatusDefinition(widgetDefinition)) + case "event_stream": + definition = datadogV1.EventStreamWidgetDefinitionAsWidgetDefinition(buildDatadogEventStreamDefinition(widgetDefinition)) case "free_text": definition = datadogV1.FreeTextWidgetDefinitionAsWidgetDefinition(buildDatadogFreeTextDefinition(widgetDefinition)) case "iframe": @@ -379,6 +401,8 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) definition = datadogV1.NoteWidgetDefinitionAsWidgetDefinition(buildDatadogNoteDefinition(widgetDefinition)) case "servicemap": definition = datadogV1.ServiceMapWidgetDefinitionAsWidgetDefinition(buildDatadogServiceMapDefinition(widgetDefinition)) + case "trace_service": + definition = datadogV1.ServiceSummaryWidgetDefinitionAsWidgetDefinition(buildDatadogTraceServiceDefinition(widgetDefinition)) default: diags = append(diags, diag.Diagnostic{ Severity: diag.Error, @@ -398,7 +422,6 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) } datadogWidget.SetLayout(*buildPowerpackWidgetLayout(layout)) } - datadogWidgets = append(datadogWidgets, *datadogWidget) } return &datadogWidgets, diags diff --git a/go.mod b/go.mod index dc19bd5dc7..ea83511352 100644 --- a/go.mod +++ b/go.mod @@ -1,7 +1,7 @@ module github.com/terraform-providers/terraform-provider-datadog require ( - github.com/DataDog/datadog-api-client-go/v2 v2.18.1-0.20231020110506-54467ff19116 + github.com/DataDog/datadog-api-client-go/v2 v2.18.1-0.20231024184046-df036bc40dfc github.com/DataDog/dd-sdk-go-testing v0.0.0-20211116174033-1cd082e322ad github.com/dnaeon/go-vcr v1.0.1 github.com/hashicorp/go-cleanhttp v0.5.2 diff --git a/go.sum b/go.sum index 2d59ca36b7..b69a189569 100644 --- a/go.sum +++ b/go.sum @@ -2,6 +2,12 @@ cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMT github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= github.com/DataDog/datadog-api-client-go/v2 v2.18.1-0.20231020110506-54467ff19116 h1:+1Z7sjGCVSxn44AwKCTbaR+0RukD+SCD/+8s5mqKdh4= github.com/DataDog/datadog-api-client-go/v2 v2.18.1-0.20231020110506-54467ff19116/go.mod h1:lHlfhsNQ2qZclvpVQTfrGowUDIdIzAao38A05f9EQpc= +github.com/DataDog/datadog-api-client-go/v2 v2.18.1-0.20231024164246-bc2af0856b0b h1:cV9Qs++g7F5kG3wE7bOpehEcexk2QsbeRJla1bOuPeY= +github.com/DataDog/datadog-api-client-go/v2 v2.18.1-0.20231024164246-bc2af0856b0b/go.mod h1:lHlfhsNQ2qZclvpVQTfrGowUDIdIzAao38A05f9EQpc= +github.com/DataDog/datadog-api-client-go/v2 v2.18.1-0.20231024180157-06315a33e5f7 h1:TPrchAmLJZ834/Xncy/t8VULnhU4ybC/mUrBsz6tzEE= +github.com/DataDog/datadog-api-client-go/v2 v2.18.1-0.20231024180157-06315a33e5f7/go.mod h1:lHlfhsNQ2qZclvpVQTfrGowUDIdIzAao38A05f9EQpc= +github.com/DataDog/datadog-api-client-go/v2 v2.18.1-0.20231024184046-df036bc40dfc h1:p8LbmurY9vd/T9cbZ91P0DynxySOt5JGUz4iwHj/B30= +github.com/DataDog/datadog-api-client-go/v2 v2.18.1-0.20231024184046-df036bc40dfc/go.mod h1:lHlfhsNQ2qZclvpVQTfrGowUDIdIzAao38A05f9EQpc= github.com/DataDog/datadog-go v4.4.0+incompatible/go.mod h1:LButxg5PwREeZtORoXG3tL4fMGNddJ+vMq1mwgfaqoQ= github.com/DataDog/datadog-go v4.8.3+incompatible h1:fNGaYSuObuQb5nzeTQqowRAd9bpDIRRV4/gUtIBjh8Q= github.com/DataDog/datadog-go v4.8.3+incompatible/go.mod h1:LButxg5PwREeZtORoXG3tL4fMGNddJ+vMq1mwgfaqoQ= @@ -61,6 +67,7 @@ github.com/fatih/color v1.13.0 h1:8LOYc1KYPPmyKMuN8QV2DNRWNbLo6LZ0iLs8+mlH53w= github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk= github.com/frankban/quicktest v1.14.3 h1:FJKSZTDHjyhriyC81FLQ0LY93eSai0ZyR/ZIkd3ZUKE= github.com/go-git/gcfg v1.5.0 h1:Q5ViNfGF8zFgyJWPqYwA7qGFoMTEiBmdlkcfRmpIMa4= +github.com/go-git/gcfg v1.5.0/go.mod h1:5m20vg6GwYabIxaOonVkTdrILxQMpEShl1xiMF4ua+E= github.com/go-git/go-billy/v5 v5.4.1 h1:Uwp5tDRkPr+l/TnbHOQzp+tmJfLceOlbVucgpTz8ix4= github.com/go-git/go-git/v5 v5.6.1 h1:q4ZRqQl4pR/ZJHc1L5CFjGA1a10u76aV1iC+nh+bHsk= github.com/go-test/deep v1.0.3 h1:ZrJSEWsXzPOxaZnFteGEfooLba+ju3FYIbOrS+rQd68= @@ -162,6 +169,7 @@ github.com/imdario/mergo v0.3.11/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH github.com/imdario/mergo v0.3.13 h1:lFzP57bqS/wsqKssCGmtLAb8A0wKjLGrve2q3PPVcBk= github.com/imdario/mergo v0.3.13/go.mod h1:4lJ1jqUDcsbIECGy0RUJAXNIhg+6ocWgb1ALK2O4oXg= github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 h1:BQSFePA1RWJOlocH6Fxy8MmwDt+yVQYULKfN0RoTN8A= +github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99/go.mod h1:1lJo3i6rXxKeerYnT8Nvf0QmHCRC1n8sfWVwXF2Frvo= github.com/jhump/protoreflect v1.6.0 h1:h5jfMVslIg6l29nsMs0D8Wj17RDVdNYti0vDN/PZZoE= github.com/jonboulle/clockwork v0.2.2 h1:UOGuzwb1PwsrDAObMuhUnj0p5ULPj8V/xJ7Kx9qUBdQ= github.com/jonboulle/clockwork v0.2.2/go.mod h1:Pkfl5aHPm1nk2H9h0bjmnJD/BcgbGXUBGnn1kMkgxc8= @@ -171,6 +179,7 @@ github.com/kr/pretty v0.3.0 h1:WgNl7dwNpEZ6jJ9k1snq4pZsg7DOEN8hP9Xw0Tsjwk0= github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= +github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc= github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU= github.com/mattn/go-colorable v0.1.9/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc= @@ -215,6 +224,7 @@ github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1: github.com/rogpeppe/go-internal v1.6.1 h1:/FiVV8dS/e+YqF2JvO3yXRFbBLTIuSDkuC7aBOAvL+k= github.com/russross/blackfriday v1.6.0 h1:KqfZb0pUVN2lYqZUYRddxF4OR8ZMURnJIG5Y3VRLtww= github.com/russross/blackfriday v1.6.0/go.mod h1:ti0ldHuxg49ri4ksnFxlkCfN+hvslNlmVHqNRXXJNAY= +github.com/sebdah/goldie v1.0.0/go.mod h1:jXP4hmWywNEwZzhMuv2ccnqTSFpuq8iyQhtQdkkZBH4= github.com/sergi/go-diff v1.2.0 h1:XU+rvMAioB0UC3q1MFrIQy4Vo5/4VsRDQQXHsEya6xQ= github.com/shopspring/decimal v1.2.0/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o= github.com/shopspring/decimal v1.3.1 h1:2Usl1nmF/WZucqkFZhnfFYxxxu8LG21F6nPQBE5gKV8= @@ -240,6 +250,7 @@ github.com/tinylib/msgp v1.1.6/go.mod h1:75BAfg2hauQhs3qedfdDZmWAPcFMAvJE5b9rGOM github.com/vmihailenco/msgpack v3.3.3+incompatible/go.mod h1:fy3FlTQTDXWkZ7Bh6AcGMlsjHatGryHQYUTf1ShIgkk= github.com/vmihailenco/msgpack v4.0.4+incompatible h1:dSLoQfGFAo3F6OoNhwUmLwVgaUXK79GlxNBwueZn0xI= github.com/vmihailenco/msgpack v4.0.4+incompatible/go.mod h1:fy3FlTQTDXWkZ7Bh6AcGMlsjHatGryHQYUTf1ShIgkk= +github.com/vmihailenco/msgpack/v4 v4.3.12/go.mod h1:gborTTJjAo/GWTqqRjrLCn9pgNN+NXzzngzBKDPIqw4= github.com/vmihailenco/msgpack/v5 v5.3.5 h1:5gO0H1iULLWGhs2H5tbAHIZTV8/cYafcFOr9znI5mJU= github.com/vmihailenco/msgpack/v5 v5.3.5/go.mod h1:7xyJ9e+0+9SaZT0Wt1RGleJXzli6Q/V5KbhBonMG9jc= github.com/vmihailenco/tagparser/v2 v2.0.0 h1:y09buUbR+b5aycVFQs/g70pqKVZNBmxwAhO7/IwNM9g= @@ -248,6 +259,7 @@ github.com/xanzy/ssh-agent v0.3.3 h1:+/15pJfg/RsTxqYcX6fHqOXZwwMP+2VyYWJeWM2qQFM github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/zclconf/go-cty v1.13.2 h1:4GvrUxe/QUDYuJKAav4EYqdM47/kZa672LwmXFmEKT0= github.com/zclconf/go-cty v1.13.2/go.mod h1:YKQzy/7pZ7iq2jNFzy5go57xdxdWoLLpaEp4u238AE0= +github.com/zclconf/go-cty-debug v0.0.0-20191215020915-b22d67c1ba0b/go.mod h1:ZRKQfBXbGkpdV6QMzT3rU1kSTAnfu1dO8dPKjYprgj8= github.com/zorkian/go-datadog-api v2.30.0+incompatible h1:R4ryGocppDqZZbnNc5EDR8xGWF/z/MxzWnqTUijDQes= github.com/zorkian/go-datadog-api v2.30.0+incompatible/go.mod h1:PkXwHX9CUQa/FpB9ZwAD45N1uhCW4MT/Wj7m36PbKss= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= From 9dd1332f65bc9f973a606660998a8ef58511877a Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Tue, 24 Oct 2023 17:09:59 -0400 Subject: [PATCH 11/48] test support for trace service and event stream --- .../TestAccDatadogPowerpackAlertGraph.freeze | 2 +- .../TestAccDatadogPowerpackCheckStatus.freeze | 2 +- .../TestAccDatadogPowerpackEventStream.freeze | 1 + .../TestAccDatadogPowerpackEventStream.yaml | 122 ++++++++++++++++++ .../TestAccDatadogPowerpackFreeText.freeze | 2 +- .../TestAccDatadogPowerpackIFrame.freeze | 2 +- .../TestAccDatadogPowerpackImage.freeze | 2 +- .../TestAccDatadogPowerpackNote.freeze | 2 +- .../TestAccDatadogPowerpackServicemap.freeze | 2 +- ...TestAccDatadogPowerpackTraceService.freeze | 1 + .../TestAccDatadogPowerpackTraceService.yaml | 106 +++++++++++++++ .../TestAccDatadogPowerpack_update.freeze | 2 +- .../TestAccDatadogPowerpack_update.yaml | 22 ++-- datadog/tests/provider_test.go | 2 + ...rce_datadog_powerpack_event_stream_test.go | 51 ++++++++ .../tests/resource_datadog_powerpack_test.go | 2 + ...ce_datadog_powerpack_trace_service_test.go | 69 ++++++++++ 17 files changed, 373 insertions(+), 19 deletions(-) create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackEventStream.freeze create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackEventStream.yaml create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackTraceService.freeze create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackTraceService.yaml create mode 100644 datadog/tests/resource_datadog_powerpack_event_stream_test.go create mode 100644 datadog/tests/resource_datadog_powerpack_trace_service_test.go diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.freeze index 11020e7fb5..03b0f44451 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.freeze @@ -1 +1 @@ -2023-10-23T21:48:27.85447-04:00 \ No newline at end of file +2023-10-24T17:08:24.6823-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackCheckStatus.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackCheckStatus.freeze index 04e1b44053..ae35746601 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackCheckStatus.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackCheckStatus.freeze @@ -1 +1 @@ -2023-10-23T21:48:27.854248-04:00 \ No newline at end of file +2023-10-24T17:08:24.68289-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackEventStream.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackEventStream.freeze new file mode 100644 index 0000000000..8f4d8528e1 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackEventStream.freeze @@ -0,0 +1 @@ +2023-10-24T17:08:24.682173-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackEventStream.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackEventStream.yaml new file mode 100644 index 0000000000..94a4db0847 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackEventStream.yaml @@ -0,0 +1,122 @@ +--- +version: 1 +interactions: +- request: + body: | + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackEventStream-local-1698181231","type":"group","widgets":[{"definition":{"event_size":"l","query":"*","title":"Widget Title","title_align":"right","title_size":"16","type":"event_stream"}}]},"live_span":"4h"},"name":"tf-TestAccDatadogPowerpackEventStream-local-1698181231","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks + method: POST + response: + body: | + {"data":{"type":"powerpack","id":"602a0b98-72b0-11ee-8783-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackEventStream-local-1698181231","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackEventStream-local-1698181231","type":"group","widgets":[{"definition":{"event_size":"l","query":"*","title":"Widget Title","title_align":"right","title_size":"16","type":"event_stream"},"id":6862068362919563}]},"live_span":"4h"},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/602a0b98-72b0-11ee-8783-da7ad0900002 + method: GET + response: + body: '{"errors":["Powerpack with ID 602a0b98-72b0-11ee-8783-da7ad0900002 not found"]}' + headers: + Content-Type: + - application/json + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/602a0b98-72b0-11ee-8783-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"602a0b98-72b0-11ee-8783-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackEventStream-local-1698181231","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackEventStream-local-1698181231","type":"group","widgets":[{"definition":{"event_size":"l","query":"*","title":"Widget Title","title_align":"right","title_size":"16","type":"event_stream"},"id":6862068362919563}]},"live_span":"4h"},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/602a0b98-72b0-11ee-8783-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"602a0b98-72b0-11ee-8783-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackEventStream-local-1698181231","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackEventStream-local-1698181231","type":"group","widgets":[{"definition":{"event_size":"l","query":"*","title":"Widget Title","title_align":"right","title_size":"16","type":"event_stream"},"id":6862068362919563}]},"live_span":"4h"},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/602a0b98-72b0-11ee-8783-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"602a0b98-72b0-11ee-8783-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackEventStream-local-1698181231","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackEventStream-local-1698181231","type":"group","widgets":[{"definition":{"event_size":"l","query":"*","title":"Widget Title","title_align":"right","title_size":"16","type":"event_stream"},"id":6862068362919563}]},"live_span":"4h"},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - '*/*' + url: https://api.datadoghq.com/api/v2/powerpacks/602a0b98-72b0-11ee-8783-da7ad0900002 + method: DELETE + response: + body: "" + headers: + Content-Type: + - text/html; charset=utf-8 + status: 204 No Content + code: 204 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/602a0b98-72b0-11ee-8783-da7ad0900002 + method: GET + response: + body: '{"errors":["Powerpack with ID 602a0b98-72b0-11ee-8783-da7ad0900002 not found"]}' + headers: + Content-Type: + - application/json + status: 404 Not Found + code: 404 + duration: "" diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.freeze index 4a2b2d958d..2906bee9dc 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.freeze @@ -1 +1 @@ -2023-10-23T21:48:27.853921-04:00 \ No newline at end of file +2023-10-24T17:08:24.64762-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackIFrame.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackIFrame.freeze index 5e288ddf0b..954179b378 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackIFrame.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackIFrame.freeze @@ -1 +1 @@ -2023-10-23T21:48:27.854057-04:00 \ No newline at end of file +2023-10-24T17:08:24.68185-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackImage.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackImage.freeze index 399af65f93..311c46593e 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackImage.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackImage.freeze @@ -1 +1 @@ -2023-10-23T21:48:27.853705-04:00 \ No newline at end of file +2023-10-24T17:08:24.679699-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackNote.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackNote.freeze index b55f48b4cd..71d9dc479f 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackNote.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackNote.freeze @@ -1 +1 @@ -2023-10-23T22:03:30.286513-04:00 \ No newline at end of file +2023-10-24T17:08:24.679498-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackServicemap.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackServicemap.freeze index bb6c26cdc3..f2c47b2a9b 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackServicemap.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackServicemap.freeze @@ -1 +1 @@ -2023-10-23T21:48:31.971234-04:00 \ No newline at end of file +2023-10-24T17:08:24.680174-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackTraceService.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackTraceService.freeze new file mode 100644 index 0000000000..8e20b4c8be --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackTraceService.freeze @@ -0,0 +1 @@ +2023-10-24T17:08:27.538265-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackTraceService.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackTraceService.yaml new file mode 100644 index 0000000000..d1851f47b4 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackTraceService.yaml @@ -0,0 +1,106 @@ +--- +version: 1 +interactions: +- request: + body: | + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackTraceService-local-1698181707","type":"group","widgets":[{"definition":{"display_format":"three_column","env":"datadog.com","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","type":"trace_service"}}]},"live_span":"4h"},"name":"tf-TestAccDatadogPowerpackTraceService-local-1698181707","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks + method: POST + response: + body: | + {"data":{"type":"powerpack","id":"7b2e3c56-72b1-11ee-823c-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackTraceService-local-1698181707","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackTraceService-local-1698181707","type":"group","widgets":[{"definition":{"display_format":"three_column","env":"datadog.com","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","type":"trace_service"},"id":6922213082144370}]},"live_span":"4h"},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/7b2e3c56-72b1-11ee-823c-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"7b2e3c56-72b1-11ee-823c-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackTraceService-local-1698181707","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackTraceService-local-1698181707","type":"group","widgets":[{"definition":{"display_format":"three_column","env":"datadog.com","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","type":"trace_service"},"id":6922213082144370}]},"live_span":"4h"},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/7b2e3c56-72b1-11ee-823c-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"7b2e3c56-72b1-11ee-823c-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackTraceService-local-1698181707","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackTraceService-local-1698181707","type":"group","widgets":[{"definition":{"display_format":"three_column","env":"datadog.com","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","type":"trace_service"},"id":6922213082144370}]},"live_span":"4h"},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/7b2e3c56-72b1-11ee-823c-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"7b2e3c56-72b1-11ee-823c-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackTraceService-local-1698181707","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackTraceService-local-1698181707","type":"group","widgets":[{"definition":{"display_format":"three_column","env":"datadog.com","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","type":"trace_service"},"id":6922213082144370}]},"live_span":"4h"},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - '*/*' + url: https://api.datadoghq.com/api/v2/powerpacks/7b2e3c56-72b1-11ee-823c-da7ad0900002 + method: DELETE + response: + body: "" + headers: + Content-Type: + - text/html; charset=utf-8 + status: 204 No Content + code: 204 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/7b2e3c56-72b1-11ee-823c-da7ad0900002 + method: GET + response: + body: '{"errors":["Powerpack with ID 7b2e3c56-72b1-11ee-823c-da7ad0900002 not found"]}' + headers: + Content-Type: + - application/json + status: 404 Not Found + code: 404 + duration: "" diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpack_update.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpack_update.freeze index 1ae5023983..fee7832dde 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpack_update.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpack_update.freeze @@ -1 +1 @@ -2023-10-23T21:48:27.853648-04:00 \ No newline at end of file +2023-10-24T17:08:24.679589-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpack_update.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpack_update.yaml index b75c3b33fd..d288a9a72d 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpack_update.yaml +++ b/datadog/tests/cassettes/TestAccDatadogPowerpack_update.yaml @@ -3,7 +3,7 @@ version: 1 interactions: - request: body: | - {"data":{"attributes":{"description":"Test Powerpack","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpack_update-local-1698107525","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"}}]}},"name":"tf-TestAccDatadogPowerpack_update-local-1698107525","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + {"data":{"attributes":{"description":"Test Powerpack","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpack_update-local-1698181329","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"}}]},"live_span":"1h"},"name":"tf-TestAccDatadogPowerpack_update-local-1698181329","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} form: {} headers: Accept: @@ -14,7 +14,7 @@ interactions: method: POST response: body: | - {"data":{"type":"powerpack","id":"c3497d14-7204-11ee-bd15-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpack_update-local-1698107525","description":"Test Powerpack","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpack_update-local-1698107525","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":7471808949109868}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"9a0208ca-72b0-11ee-9aba-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpack_update-local-1698181329","description":"Test Powerpack","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpack_update-local-1698181329","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":4367903546362348}]},"live_span":"1h"},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -27,11 +27,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/c3497d14-7204-11ee-bd15-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/9a0208ca-72b0-11ee-9aba-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"c3497d14-7204-11ee-bd15-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpack_update-local-1698107525","description":"Test Powerpack","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpack_update-local-1698107525","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":7471808949109868}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"9a0208ca-72b0-11ee-9aba-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpack_update-local-1698181329","description":"Test Powerpack","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpack_update-local-1698181329","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":4367903546362348}]},"live_span":"1h"},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -44,11 +44,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/c3497d14-7204-11ee-bd15-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/9a0208ca-72b0-11ee-9aba-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"c3497d14-7204-11ee-bd15-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpack_update-local-1698107525","description":"Test Powerpack","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpack_update-local-1698107525","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":7471808949109868}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"9a0208ca-72b0-11ee-9aba-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpack_update-local-1698181329","description":"Test Powerpack","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpack_update-local-1698181329","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":4367903546362348}]},"live_span":"1h"},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -61,11 +61,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/c3497d14-7204-11ee-bd15-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/9a0208ca-72b0-11ee-9aba-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"c3497d14-7204-11ee-bd15-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpack_update-local-1698107525","description":"Test Powerpack","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpack_update-local-1698107525","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":7471808949109868}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"9a0208ca-72b0-11ee-9aba-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpack_update-local-1698181329","description":"Test Powerpack","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpack_update-local-1698181329","type":"group","widgets":[{"definition":{"type":"iframe","url":"https://google.com"},"id":4367903546362348}]},"live_span":"1h"},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -78,7 +78,7 @@ interactions: headers: Accept: - '*/*' - url: https://api.datadoghq.com/api/v2/powerpacks/c3497d14-7204-11ee-bd15-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/9a0208ca-72b0-11ee-9aba-da7ad0900002 method: DELETE response: body: "" @@ -94,10 +94,10 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/c3497d14-7204-11ee-bd15-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/9a0208ca-72b0-11ee-9aba-da7ad0900002 method: GET response: - body: '{"errors":["Powerpack with ID c3497d14-7204-11ee-bd15-da7ad0900002 not found"]}' + body: '{"errors":["Powerpack with ID 9a0208ca-72b0-11ee-9aba-da7ad0900002 not found"]}' headers: Content-Type: - application/json diff --git a/datadog/tests/provider_test.go b/datadog/tests/provider_test.go index 129612b61b..d922bfefe5 100644 --- a/datadog/tests/provider_test.go +++ b/datadog/tests/provider_test.go @@ -136,11 +136,13 @@ var testFiles2EndpointTags = map[string]string{ "tests/resource_datadog_powerpack_test": "powerpacks", "tests/resource_datadog_powerpack_alert_graph_test": "powerpacks", "tests/resource_datadog_powerpack_check_status_test": "powerpacks", + "tests/resource_datadog_powerpack_event_stream_test": "powerpacks", "tests/resource_datadog_powerpack_iframe_test": "powerpacks", "tests/resource_datadog_powerpack_image_test": "powerpacks", "tests/resource_datadog_powerpack_free_text_test": "powerpacks", "tests/resource_datadog_powerpack_note_test": "powerpacks", "tests/resource_datadog_powerpack_servicemap_test": "powerpacks", + "tests/resource_datadog_powerpack_trace_service_test": "powerpacks", "tests/resource_datadog_downtime_test": "downtimes", "tests/resource_datadog_downtime_schedule_test": "downtimes", "tests/resource_datadog_integration_aws_lambda_arn_test": "integration-aws", diff --git a/datadog/tests/resource_datadog_powerpack_event_stream_test.go b/datadog/tests/resource_datadog_powerpack_event_stream_test.go new file mode 100644 index 0000000000..463ed9be52 --- /dev/null +++ b/datadog/tests/resource_datadog_powerpack_event_stream_test.go @@ -0,0 +1,51 @@ +package test + +import ( + "testing" +) + +const datadogPowerpackEventStreamTest = ` +resource "datadog_powerpack" "event_stream_powerpack" { + name = "{{uniq}}" + tags = ["tag:foo1"] + description = "Created using the Datadog provider in Terraform" + live_span = "4h" + template_variables { + defaults = ["defaults"] + name = "datacenter" + } + widget { + event_stream_definition { + query = "*" + event_size = "l" + title = "Widget Title" + title_size = 16 + title_align = "right" + } + } +} +` + +var datadogPowerpackEventStreamTestAsserts = []string{ + // Powerpack metadata + "description = Created using the Datadog provider in Terraform", + "widget.# = 1", + "tags.# = 1", + "tags.0 = tag:foo1", + "live_span = 4h", + // Event Stream widget + "widget.0.event_stream_definition.0.query = *", + "widget.0.event_stream_definition.0.event_size = l", + "widget.0.event_stream_definition.0.title = Widget Title", + "widget.0.event_stream_definition.0.title_size = 16", + "widget.0.event_stream_definition.0.title_align = right", + // Template Variables + "template_variables.# = 1", + "template_variables.0.name = datacenter", + "template_variables.0.defaults.# = 1", + "template_variables.0.defaults.0 = defaults", +} + +func TestAccDatadogPowerpackEventStream(t *testing.T) { + testAccDatadogPowerpackWidgetUtil(t, datadogPowerpackEventStreamTest, "datadog_powerpack.event_stream_powerpack", datadogPowerpackEventStreamTestAsserts) +} diff --git a/datadog/tests/resource_datadog_powerpack_test.go b/datadog/tests/resource_datadog_powerpack_test.go index 165bf33f15..f0581d6031 100644 --- a/datadog/tests/resource_datadog_powerpack_test.go +++ b/datadog/tests/resource_datadog_powerpack_test.go @@ -20,6 +20,7 @@ resource "datadog_powerpack" "simple_powerpack" { name = "%s" tags = ["tag:foo1"] description = "Test Powerpack" + live_span = "1h" template_variables { defaults = ["defaults"] @@ -39,6 +40,7 @@ var datadogSimplePowerpackConfigAsserts = []string{ "widget.# = 1", "tags.# = 1", "tags.0 = tag:foo1", + "live_span = 1h", // IFrame widget "widget.0.iframe_definition.0.url = https://google.com", // Template Variables diff --git a/datadog/tests/resource_datadog_powerpack_trace_service_test.go b/datadog/tests/resource_datadog_powerpack_trace_service_test.go new file mode 100644 index 0000000000..ffc316462d --- /dev/null +++ b/datadog/tests/resource_datadog_powerpack_trace_service_test.go @@ -0,0 +1,69 @@ +package test + +import ( + "testing" +) + +const datadogPowerpackTraceServiceTest = ` +resource "datadog_powerpack" "trace_service_powerpack" { + name = "{{uniq}}" + tags = ["tag:foo1"] + description = "Created using the Datadog provider in Terraform" + live_span = "4h" + template_variables { + defaults = ["defaults"] + name = "datacenter" + } + widget { + trace_service_definition { + display_format = "three_column" + env = "datadog.com" + 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" + } + } +} +` + +var datadogPowerpackTraceServiceTestAsserts = []string{ + // Powerpack metadata + "description = Created using the Datadog provider in Terraform", + "widget.# = 1", + "tags.# = 1", + "tags.0 = tag:foo1", + "live_span = 4h", + // Trace Service widget + "widget.0.trace_service_definition.0.display_format = three_column", + "widget.0.trace_service_definition.0.env = datadog.com", + "widget.0.trace_service_definition.0.service = alerting-cassandra", + "widget.0.trace_service_definition.0.show_breakdown = true", + "widget.0.trace_service_definition.0.show_distribution = true", + "widget.0.trace_service_definition.0.show_errors = true", + "widget.0.trace_service_definition.0.show_hits = true", + "widget.0.trace_service_definition.0.show_latency = false", + "widget.0.trace_service_definition.0.show_resource_list = false", + "widget.0.trace_service_definition.0.size_format = large", + "widget.0.trace_service_definition.0.span_name = cassandra.query", + "widget.0.trace_service_definition.0.title = alerting-cassandra #env:datadog.com", + "widget.0.trace_service_definition.0.title_align = center", + "widget.0.trace_service_definition.0.title_size = 13", + // Template Variables + "template_variables.# = 1", + "template_variables.0.name = datacenter", + "template_variables.0.defaults.# = 1", + "template_variables.0.defaults.0 = defaults", +} + +func TestAccDatadogPowerpackTraceService(t *testing.T) { + testAccDatadogPowerpackWidgetUtil(t, datadogPowerpackTraceServiceTest, "datadog_powerpack.trace_service_powerpack", datadogPowerpackTraceServiceTestAsserts) +} From f6959e8f69670072e0ae382fbc660fb38424d3ee Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Tue, 24 Oct 2023 17:14:30 -0400 Subject: [PATCH 12/48] rollback cassette changes --- .../tests/cassettes/TestAccDatadogPowerpackAlertGraph.freeze | 2 +- .../tests/cassettes/TestAccDatadogPowerpackCheckStatus.freeze | 2 +- datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.freeze | 2 +- datadog/tests/cassettes/TestAccDatadogPowerpackIFrame.freeze | 2 +- datadog/tests/cassettes/TestAccDatadogPowerpackImage.freeze | 2 +- datadog/tests/cassettes/TestAccDatadogPowerpackNote.freeze | 2 +- .../tests/cassettes/TestAccDatadogPowerpackServicemap.freeze | 2 +- datadog/tests/cassettes/TestAccDatadogPowerpack_update.freeze | 2 +- 8 files changed, 8 insertions(+), 8 deletions(-) diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.freeze index 03b0f44451..11020e7fb5 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.freeze @@ -1 +1 @@ -2023-10-24T17:08:24.6823-04:00 \ No newline at end of file +2023-10-23T21:48:27.85447-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackCheckStatus.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackCheckStatus.freeze index ae35746601..04e1b44053 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackCheckStatus.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackCheckStatus.freeze @@ -1 +1 @@ -2023-10-24T17:08:24.68289-04:00 \ No newline at end of file +2023-10-23T21:48:27.854248-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.freeze index 2906bee9dc..4a2b2d958d 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackFreeText.freeze @@ -1 +1 @@ -2023-10-24T17:08:24.64762-04:00 \ No newline at end of file +2023-10-23T21:48:27.853921-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackIFrame.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackIFrame.freeze index 954179b378..5e288ddf0b 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackIFrame.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackIFrame.freeze @@ -1 +1 @@ -2023-10-24T17:08:24.68185-04:00 \ No newline at end of file +2023-10-23T21:48:27.854057-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackImage.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackImage.freeze index 311c46593e..399af65f93 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackImage.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackImage.freeze @@ -1 +1 @@ -2023-10-24T17:08:24.679699-04:00 \ No newline at end of file +2023-10-23T21:48:27.853705-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackNote.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackNote.freeze index 71d9dc479f..b55f48b4cd 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackNote.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackNote.freeze @@ -1 +1 @@ -2023-10-24T17:08:24.679498-04:00 \ No newline at end of file +2023-10-23T22:03:30.286513-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackServicemap.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackServicemap.freeze index f2c47b2a9b..bb6c26cdc3 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackServicemap.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackServicemap.freeze @@ -1 +1 @@ -2023-10-24T17:08:24.680174-04:00 \ No newline at end of file +2023-10-23T21:48:31.971234-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpack_update.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpack_update.freeze index fee7832dde..1ae5023983 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpack_update.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpack_update.freeze @@ -1 +1 @@ -2023-10-24T17:08:24.679589-04:00 \ No newline at end of file +2023-10-23T21:48:27.853648-04:00 \ No newline at end of file From 7985e658ff2d19f96b186ef47a573459811d2b9b Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Tue, 24 Oct 2023 17:28:44 -0400 Subject: [PATCH 13/48] toplist and request field support --- datadog/resource_datadog_powerpack.go | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index f6bb32537f..57efc78ab1 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -348,10 +348,8 @@ func dashboardWidgetsToPpkWidgets(terraformWidgets *[]map[string]interface{}) ([ widgetLayout = datadogV2.NewPowerpackInnerWidgetLayout(height, width, x, y) } else { widgetDef = terraformDefinition.([]map[string]interface{})[0] - // The type in the dictionary is in the format _definition, where can contain - // a type with multiple underscores. To parse a valid type name, we take a substring up until the last - // underscore. Ex: free_text_definition -> free_text, hostmap_definition -> hostmap - widgetDef["type"] = widgetType[:strings.LastIndex(widgetType, "_")] + // Dashboard widgets set live span at the widget level, we must prevent that for powerpack widgets + // where live span is set at the resource level. if widgetDef["live_span"] != nil { diags = append(diags, diag.Diagnostic{ Severity: diag.Error, @@ -359,6 +357,18 @@ func dashboardWidgetsToPpkWidgets(terraformWidgets *[]map[string]interface{}) ([ }) return nil, diags } + + if widgetDef["request"] != nil { + // Distribution/change/heatmap widgets have a "requests" field, while API Spec has a "request" field + // Here we set the "requests" field and remove "request" + widgetDefRequests := *widgetDef["request"].(*[]map[string]interface{}) + widgetDef["requests"] = widgetDefRequests + delete(widgetDef, "request") + } + // The type in the dictionary is in the format _definition, where can contain + // a type with multiple underscores. To parse a valid type name, we take a substring up until the last + // underscore. Ex: free_text_definition -> free_text, hostmap_definition -> hostmap + widgetDef["type"] = widgetType[:strings.LastIndex(widgetType, "_")] } } widgetsDDItem := datadogV2.NewPowerpackInnerWidgets(widgetDef) @@ -384,6 +394,12 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) // Add new powerpack-supported widgets here // We save Powerpack widgets as Dashboard widgets so we need to convert them to the appropriate widget definition object. widgetType := widgetDefinition["type"] + // Dashboard TF widgets have a "requests" field, while API Spec has a "request" field + // Here we set the "request" field and remove "requests" + if widgetDefinition["requests"] != nil { + terraformWidget.Definition["request"] = terraformWidget.Definition["requests"] + delete(terraformWidget.Definition, "requests") + } switch widgetType { case "alert_graph": definition = datadogV1.AlertGraphWidgetDefinitionAsWidgetDefinition(buildDatadogAlertGraphDefinition(widgetDefinition)) @@ -401,6 +417,8 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) definition = datadogV1.NoteWidgetDefinitionAsWidgetDefinition(buildDatadogNoteDefinition(widgetDefinition)) case "servicemap": definition = datadogV1.ServiceMapWidgetDefinitionAsWidgetDefinition(buildDatadogServiceMapDefinition(widgetDefinition)) + case "toplist": + definition = datadogV1.ToplistWidgetDefinitionAsWidgetDefinition(buildDatadogToplistDefinition(widgetDefinition)) case "trace_service": definition = datadogV1.ServiceSummaryWidgetDefinitionAsWidgetDefinition(buildDatadogTraceServiceDefinition(widgetDefinition)) default: From 9ed426145b0fc3b2be225dd0bddb6b2b197fa807 Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Wed, 25 Oct 2023 11:21:50 -0400 Subject: [PATCH 14/48] toplist test --- .../TestAccDatadogPowerpackToplist.freeze | 1 + .../TestAccDatadogPowerpackToplist.yaml | 106 ++++++++++++++++++ datadog/tests/provider_test.go | 1 + ...resource_datadog_powerpack_toplist_test.go | 61 ++++++++++ 4 files changed, 169 insertions(+) create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackToplist.freeze create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackToplist.yaml create mode 100644 datadog/tests/resource_datadog_powerpack_toplist_test.go diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackToplist.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackToplist.freeze new file mode 100644 index 0000000000..26e4e08de3 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackToplist.freeze @@ -0,0 +1 @@ +2023-10-25T11:18:07.944455-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackToplist.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackToplist.yaml new file mode 100644 index 0000000000..755558adb8 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackToplist.yaml @@ -0,0 +1,106 @@ +--- +version: 1 +interactions: +- request: + body: | + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackToplist-local-1698247087","type":"group","widgets":[{"definition":{"requests":[{"conditional_formats":[{"comparator":"\u003c","hide_value":false,"palette":"white_on_green","value":2},{"comparator":"\u003e","hide_value":false,"palette":"white_on_red","value":2.2}],"q":"avg:system.cpu.user{app:general} by {datacenter}"}],"title":"Widget Title","type":"toplist"}}]}},"name":"tf-TestAccDatadogPowerpackToplist-local-1698247087","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks + method: POST + response: + body: | + {"data":{"type":"powerpack","id":"b549b436-7349-11ee-9419-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackToplist-local-1698247087","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackToplist-local-1698247087","type":"group","widgets":[{"definition":{"requests":[{"conditional_formats":[{"comparator":"<","hide_value":false,"palette":"white_on_green","value":2},{"comparator":">","hide_value":false,"palette":"white_on_red","value":2.2}],"q":"avg:system.cpu.user{app:general} by {datacenter}"}],"title":"Widget Title","type":"toplist"},"id":2248074334232177}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/b549b436-7349-11ee-9419-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"b549b436-7349-11ee-9419-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackToplist-local-1698247087","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackToplist-local-1698247087","type":"group","widgets":[{"definition":{"requests":[{"conditional_formats":[{"comparator":"<","hide_value":false,"palette":"white_on_green","value":2},{"comparator":">","hide_value":false,"palette":"white_on_red","value":2.2}],"q":"avg:system.cpu.user{app:general} by {datacenter}"}],"title":"Widget Title","type":"toplist"},"id":2248074334232177}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/b549b436-7349-11ee-9419-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"b549b436-7349-11ee-9419-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackToplist-local-1698247087","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackToplist-local-1698247087","type":"group","widgets":[{"definition":{"requests":[{"conditional_formats":[{"comparator":"<","hide_value":false,"palette":"white_on_green","value":2},{"comparator":">","hide_value":false,"palette":"white_on_red","value":2.2}],"q":"avg:system.cpu.user{app:general} by {datacenter}"}],"title":"Widget Title","type":"toplist"},"id":2248074334232177}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/b549b436-7349-11ee-9419-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"b549b436-7349-11ee-9419-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackToplist-local-1698247087","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackToplist-local-1698247087","type":"group","widgets":[{"definition":{"requests":[{"conditional_formats":[{"comparator":"<","hide_value":false,"palette":"white_on_green","value":2},{"comparator":">","hide_value":false,"palette":"white_on_red","value":2.2}],"q":"avg:system.cpu.user{app:general} by {datacenter}"}],"title":"Widget Title","type":"toplist"},"id":2248074334232177}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - '*/*' + url: https://api.datadoghq.com/api/v2/powerpacks/b549b436-7349-11ee-9419-da7ad0900002 + method: DELETE + response: + body: "" + headers: + Content-Type: + - text/html; charset=utf-8 + status: 204 No Content + code: 204 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/b549b436-7349-11ee-9419-da7ad0900002 + method: GET + response: + body: '{"errors":["Powerpack with ID b549b436-7349-11ee-9419-da7ad0900002 not found"]}' + headers: + Content-Type: + - application/json + status: 404 Not Found + code: 404 + duration: "" diff --git a/datadog/tests/provider_test.go b/datadog/tests/provider_test.go index d922bfefe5..94a75b713f 100644 --- a/datadog/tests/provider_test.go +++ b/datadog/tests/provider_test.go @@ -142,6 +142,7 @@ var testFiles2EndpointTags = map[string]string{ "tests/resource_datadog_powerpack_free_text_test": "powerpacks", "tests/resource_datadog_powerpack_note_test": "powerpacks", "tests/resource_datadog_powerpack_servicemap_test": "powerpacks", + "tests/resource_datadog_powerpack_toplist_test": "powerpacks", "tests/resource_datadog_powerpack_trace_service_test": "powerpacks", "tests/resource_datadog_downtime_test": "downtimes", "tests/resource_datadog_downtime_schedule_test": "downtimes", diff --git a/datadog/tests/resource_datadog_powerpack_toplist_test.go b/datadog/tests/resource_datadog_powerpack_toplist_test.go new file mode 100644 index 0000000000..d37adb3adf --- /dev/null +++ b/datadog/tests/resource_datadog_powerpack_toplist_test.go @@ -0,0 +1,61 @@ +package test + +import ( + "testing" +) + +const datadogPowerpackToplistTest = ` +resource "datadog_powerpack" "toplist_powerpack" { + name = "{{uniq}}" + tags = ["tag:foo1"] + description = "Created using the Datadog provider in Terraform" + template_variables { + defaults = ["defaults"] + name = "datacenter" + } + widget { + toplist_definition { + request { + q = "avg:system.cpu.user{app:general} by {datacenter}" + conditional_formats { + comparator = "<" + value = "2" + palette = "white_on_green" + } + conditional_formats { + comparator = ">" + value = "2.2" + palette = "white_on_red" + } + } + title = "Widget Title" + } + } +} +` + +var datadogPowerpackToplistTestAsserts = []string{ + // Powerpack metadata + "description = Created using the Datadog provider in Terraform", + "widget.# = 1", + "tags.# = 1", + "tags.0 = tag:foo1", + // Toplist widget + "widget.0.toplist_definition.0.request.0.q = avg:system.cpu.user{app:general} by {datacenter}", + "widget.0.toplist_definition.0.request.0.conditional_formats.0.comparator = <", + "widget.0.toplist_definition.0.request.0.conditional_formats.0.value = 2", + "widget.0.toplist_definition.0.request.0.conditional_formats.0.palette = white_on_green", + "widget.0.toplist_definition.0.request.0.conditional_formats.1.comparator = >", + "widget.0.toplist_definition.0.request.0.conditional_formats.1.value = 2.2", + "widget.0.toplist_definition.0.request.0.conditional_formats.1.palette = white_on_red", + "widget.0.toplist_definition.0.title = Widget Title", + // Template Variables + "template_variables.# = 1", + "template_variables.0.name = datacenter", + "template_variables.0.defaults.# = 1", + "template_variables.0.defaults.0 = defaults", +} + +func TestAccDatadogPowerpackToplist(t *testing.T) { + testAccDatadogPowerpackWidgetUtil(t, datadogPowerpackToplistTest, "datadog_powerpack.toplist_powerpack", datadogPowerpackToplistTestAsserts) +} From 7b3551d51484b6a3ae3f54e483e2f6fc502a4779 Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Wed, 25 Oct 2023 11:38:00 -0400 Subject: [PATCH 15/48] support for change widgets + tests --- datadog/resource_datadog_powerpack.go | 2 + .../TestAccDatadogPowerpackChange.freeze | 1 + .../TestAccDatadogPowerpackChange.yaml | 106 ++++++++++++++++++ datadog/tests/provider_test.go | 1 + .../resource_datadog_powerpack_change_test.go | 57 ++++++++++ 5 files changed, 167 insertions(+) create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackChange.freeze create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackChange.yaml create mode 100644 datadog/tests/resource_datadog_powerpack_change_test.go diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index 57efc78ab1..71dc59d073 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -403,6 +403,8 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) switch widgetType { case "alert_graph": definition = datadogV1.AlertGraphWidgetDefinitionAsWidgetDefinition(buildDatadogAlertGraphDefinition(widgetDefinition)) + case "change": + definition = datadogV1.ChangeWidgetDefinitionAsWidgetDefinition(buildDatadogChangeDefinition(widgetDefinition)) case "check_status": definition = datadogV1.CheckStatusWidgetDefinitionAsWidgetDefinition(buildDatadogCheckStatusDefinition(widgetDefinition)) case "event_stream": diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackChange.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackChange.freeze new file mode 100644 index 0000000000..50980e8282 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackChange.freeze @@ -0,0 +1 @@ +2023-10-25T11:37:17.305655-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackChange.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackChange.yaml new file mode 100644 index 0000000000..d9954cb83d --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackChange.yaml @@ -0,0 +1,106 @@ +--- +version: 1 +interactions: +- request: + body: | + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackChange-local-1698248237","type":"group","widgets":[{"definition":{"requests":[{"change_type":"absolute","compare_to":"week_before","increase_good":true,"order_by":"name","order_dir":"desc","q":"avg:system.load.1{env:staging} by {account}","show_present":false}],"title":"Widget Title","type":"change"}}]}},"name":"tf-TestAccDatadogPowerpackChange-local-1698248237","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks + method: POST + response: + body: | + {"data":{"type":"powerpack","id":"61eaaa9a-734c-11ee-a4c1-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackChange-local-1698248237","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackChange-local-1698248237","type":"group","widgets":[{"definition":{"requests":[{"change_type":"absolute","compare_to":"week_before","increase_good":true,"order_by":"name","order_dir":"desc","q":"avg:system.load.1{env:staging} by {account}","show_present":false}],"title":"Widget Title","type":"change"},"id":1146273042797575}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/61eaaa9a-734c-11ee-a4c1-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"61eaaa9a-734c-11ee-a4c1-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackChange-local-1698248237","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackChange-local-1698248237","type":"group","widgets":[{"definition":{"requests":[{"change_type":"absolute","compare_to":"week_before","increase_good":true,"order_by":"name","order_dir":"desc","q":"avg:system.load.1{env:staging} by {account}","show_present":false}],"title":"Widget Title","type":"change"},"id":1146273042797575}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/61eaaa9a-734c-11ee-a4c1-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"61eaaa9a-734c-11ee-a4c1-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackChange-local-1698248237","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackChange-local-1698248237","type":"group","widgets":[{"definition":{"requests":[{"change_type":"absolute","compare_to":"week_before","increase_good":true,"order_by":"name","order_dir":"desc","q":"avg:system.load.1{env:staging} by {account}","show_present":false}],"title":"Widget Title","type":"change"},"id":1146273042797575}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/61eaaa9a-734c-11ee-a4c1-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"61eaaa9a-734c-11ee-a4c1-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackChange-local-1698248237","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackChange-local-1698248237","type":"group","widgets":[{"definition":{"requests":[{"change_type":"absolute","compare_to":"week_before","increase_good":true,"order_by":"name","order_dir":"desc","q":"avg:system.load.1{env:staging} by {account}","show_present":false}],"title":"Widget Title","type":"change"},"id":1146273042797575}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - '*/*' + url: https://api.datadoghq.com/api/v2/powerpacks/61eaaa9a-734c-11ee-a4c1-da7ad0900002 + method: DELETE + response: + body: "" + headers: + Content-Type: + - text/html; charset=utf-8 + status: 204 No Content + code: 204 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/61eaaa9a-734c-11ee-a4c1-da7ad0900002 + method: GET + response: + body: '{"errors":["Powerpack with ID 61eaaa9a-734c-11ee-a4c1-da7ad0900002 not found"]}' + headers: + Content-Type: + - application/json + status: 404 Not Found + code: 404 + duration: "" diff --git a/datadog/tests/provider_test.go b/datadog/tests/provider_test.go index 94a75b713f..f9b16ac6d5 100644 --- a/datadog/tests/provider_test.go +++ b/datadog/tests/provider_test.go @@ -135,6 +135,7 @@ var testFiles2EndpointTags = map[string]string{ "tests/resource_datadog_dashboard_treemap_test": "dashboards", "tests/resource_datadog_powerpack_test": "powerpacks", "tests/resource_datadog_powerpack_alert_graph_test": "powerpacks", + "tests/resource_datadog_powerpack_change_test": "powerpacks", "tests/resource_datadog_powerpack_check_status_test": "powerpacks", "tests/resource_datadog_powerpack_event_stream_test": "powerpacks", "tests/resource_datadog_powerpack_iframe_test": "powerpacks", diff --git a/datadog/tests/resource_datadog_powerpack_change_test.go b/datadog/tests/resource_datadog_powerpack_change_test.go new file mode 100644 index 0000000000..f32a4e8cdd --- /dev/null +++ b/datadog/tests/resource_datadog_powerpack_change_test.go @@ -0,0 +1,57 @@ +package test + +import ( + "testing" +) + +const datadogPowerpackChangeTest = ` +resource "datadog_powerpack" "change_powerpack" { + name = "{{uniq}}" + tags = ["tag:foo1"] + description = "Created using the Datadog provider in Terraform" + template_variables { + defaults = ["defaults"] + name = "datacenter" + } + widget { + change_definition { + request { + q = "avg:system.load.1{env:staging} by {account}" + change_type = "absolute" + compare_to = "week_before" + increase_good = true + order_by = "name" + order_dir = "desc" + show_present = false + } + title = "Widget Title" + } + } +} +` + +var datadogPowerpackChangeTestAsserts = []string{ + // Powerpack metadata + "description = Created using the Datadog provider in Terraform", + "widget.# = 1", + "tags.# = 1", + "tags.0 = tag:foo1", + // Change widget + "widget.0.change_definition.0.request.0.q = avg:system.load.1{env:staging} by {account}", + "widget.0.change_definition.0.request.0.change_type = absolute", + "widget.0.change_definition.0.request.0.compare_to = week_before", + "widget.0.change_definition.0.request.0.increase_good = true", + "widget.0.change_definition.0.request.0.order_by = name", + "widget.0.change_definition.0.request.0.order_dir = desc", + "widget.0.change_definition.0.request.0.show_present = false", + "widget.0.change_definition.0.title = Widget Title", + // Template Variables + "template_variables.# = 1", + "template_variables.0.name = datacenter", + "template_variables.0.defaults.# = 1", + "template_variables.0.defaults.0 = defaults", +} + +func TestAccDatadogPowerpackChange(t *testing.T) { + testAccDatadogPowerpackWidgetUtil(t, datadogPowerpackChangeTest, "datadog_powerpack.change_powerpack", datadogPowerpackChangeTestAsserts) +} From 109f1aceeabd31295fcf762f478b9072fd917c0e Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Wed, 25 Oct 2023 15:16:53 -0400 Subject: [PATCH 16/48] support for alert value widget + tests --- datadog/resource_datadog_powerpack.go | 9 ++ .../TestAccDatadogPowerpackAlertValue.freeze | 1 + .../TestAccDatadogPowerpackAlertValue.yaml | 73 ++++++++++++ .../TestAccDatadogPowerpackQueryValue.freeze | 1 + .../TestAccDatadogPowerpackQueryValue.yaml | 106 ++++++++++++++++++ datadog/tests/provider_test.go | 2 + ...urce_datadog_powerpack_alert_value_test.go | 68 +++++++++++ ...urce_datadog_powerpack_query_value_test.go | 71 ++++++++++++ 8 files changed, 331 insertions(+) create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackAlertValue.freeze create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackAlertValue.yaml create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackQueryValue.freeze create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackQueryValue.yaml create mode 100644 datadog/tests/resource_datadog_powerpack_alert_value_test.go create mode 100644 datadog/tests/resource_datadog_powerpack_query_value_test.go diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index 71dc59d073..901926ea72 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -400,9 +400,16 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) terraformWidget.Definition["request"] = terraformWidget.Definition["requests"] delete(terraformWidget.Definition, "requests") } + // TF -> json conversion processes precision as float64, it needs to be converted to + // an int value to be saved successfully + if widgetDefinition["precision"] != nil { + widgetDefinition["precision"] = int(widgetDefinition["precision"].(float64)) + } switch widgetType { case "alert_graph": definition = datadogV1.AlertGraphWidgetDefinitionAsWidgetDefinition(buildDatadogAlertGraphDefinition(widgetDefinition)) + case "alert_value": + definition = datadogV1.AlertValueWidgetDefinitionAsWidgetDefinition(buildDatadogAlertValueDefinition(widgetDefinition)) case "change": definition = datadogV1.ChangeWidgetDefinitionAsWidgetDefinition(buildDatadogChangeDefinition(widgetDefinition)) case "check_status": @@ -417,6 +424,8 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) definition = datadogV1.ImageWidgetDefinitionAsWidgetDefinition(buildDatadogImageDefinition(widgetDefinition)) case "note": definition = datadogV1.NoteWidgetDefinitionAsWidgetDefinition(buildDatadogNoteDefinition(widgetDefinition)) + case "query_value": + definition = datadogV1.QueryValueWidgetDefinitionAsWidgetDefinition(buildDatadogQueryValueDefinition(widgetDefinition)) case "servicemap": definition = datadogV1.ServiceMapWidgetDefinitionAsWidgetDefinition(buildDatadogServiceMapDefinition(widgetDefinition)) case "toplist": diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackAlertValue.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackAlertValue.freeze new file mode 100644 index 0000000000..15634f5a39 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackAlertValue.freeze @@ -0,0 +1 @@ +2023-10-25T15:16:11.722893-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackAlertValue.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackAlertValue.yaml new file mode 100644 index 0000000000..a5ec0f14dc --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackAlertValue.yaml @@ -0,0 +1,73 @@ +--- +version: 1 +interactions: +- request: + body: | + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertValue-local-1698261371","type":"group","widgets":[{"definition":{"alert_id":"895605","type":"alert_value"}},{"definition":{"alert_id":"895606","precision":1,"text_align":"center","title":"Widget Title","title_align":"center","title_size":"16","type":"alert_value","unit":"b"}}]}},"name":"tf-TestAccDatadogPowerpackAlertValue-local-1698261371","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks + method: POST + response: + body: | + {"data":{"type":"powerpack","id":"f6cba8a8-736a-11ee-a070-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertValue-local-1698261371","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertValue-local-1698261371","type":"group","widgets":[{"definition":{"alert_id":"895605","type":"alert_value"},"id":1887350622690482},{"definition":{"alert_id":"895606","precision":1,"text_align":"center","title":"Widget Title","title_align":"center","title_size":"16","type":"alert_value","unit":"b"},"id":1939669969518213}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/f6cba8a8-736a-11ee-a070-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"f6cba8a8-736a-11ee-a070-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertValue-local-1698261371","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertValue-local-1698261371","type":"group","widgets":[{"definition":{"alert_id":"895605","type":"alert_value"},"id":1887350622690482},{"definition":{"alert_id":"895606","precision":1,"text_align":"center","title":"Widget Title","title_align":"center","title_size":"16","type":"alert_value","unit":"b"},"id":1939669969518213}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/f6cba8a8-736a-11ee-a070-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"f6cba8a8-736a-11ee-a070-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertValue-local-1698261371","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertValue-local-1698261371","type":"group","widgets":[{"definition":{"alert_id":"895605","type":"alert_value"},"id":1887350622690482},{"definition":{"alert_id":"895606","precision":1,"text_align":"center","title":"Widget Title","title_align":"center","title_size":"16","type":"alert_value","unit":"b"},"id":1939669969518213}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - '*/*' + url: https://api.datadoghq.com/api/v2/powerpacks/f6cba8a8-736a-11ee-a070-da7ad0900002 + method: DELETE + response: + body: "" + headers: + Content-Type: + - text/html; charset=utf-8 + status: 204 No Content + code: 204 + duration: "" diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackQueryValue.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackQueryValue.freeze new file mode 100644 index 0000000000..ec963987c9 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackQueryValue.freeze @@ -0,0 +1 @@ +2023-10-25T11:49:06.021635-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackQueryValue.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackQueryValue.yaml new file mode 100644 index 0000000000..a50e3bde18 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackQueryValue.yaml @@ -0,0 +1,106 @@ +--- +version: 1 +interactions: +- request: + body: | + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackQueryValue-local-1698256094","type":"group","widgets":[{"definition":{"autoscale":true,"custom_unit":"xx","precision":4,"requests":[{"aggregator":"sum","conditional_formats":[{"comparator":"\u003c","hide_value":false,"palette":"white_on_green","value":2},{"comparator":"\u003e","hide_value":false,"palette":"white_on_red","value":2.2}],"q":"avg:system.load.1{env:staging} by {account}"}],"text_align":"right","title":"Widget Title","type":"query_value"}}]}},"name":"tf-TestAccDatadogPowerpackQueryValue-local-1698256094","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks + method: POST + response: + body: | + {"data":{"type":"powerpack","id":"ad75d61c-735e-11ee-89e7-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackQueryValue-local-1698256094","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackQueryValue-local-1698256094","type":"group","widgets":[{"definition":{"autoscale":true,"custom_unit":"xx","precision":4,"requests":[{"aggregator":"sum","conditional_formats":[{"comparator":"<","hide_value":false,"palette":"white_on_green","value":2},{"comparator":">","hide_value":false,"palette":"white_on_red","value":2.2}],"q":"avg:system.load.1{env:staging} by {account}"}],"text_align":"right","title":"Widget Title","type":"query_value"},"id":1291649233159705}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/ad75d61c-735e-11ee-89e7-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"ad75d61c-735e-11ee-89e7-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackQueryValue-local-1698256094","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackQueryValue-local-1698256094","type":"group","widgets":[{"definition":{"autoscale":true,"custom_unit":"xx","precision":4,"requests":[{"aggregator":"sum","conditional_formats":[{"comparator":"<","hide_value":false,"palette":"white_on_green","value":2},{"comparator":">","hide_value":false,"palette":"white_on_red","value":2.2}],"q":"avg:system.load.1{env:staging} by {account}"}],"text_align":"right","title":"Widget Title","type":"query_value"},"id":1291649233159705}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/ad75d61c-735e-11ee-89e7-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"ad75d61c-735e-11ee-89e7-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackQueryValue-local-1698256094","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackQueryValue-local-1698256094","type":"group","widgets":[{"definition":{"autoscale":true,"custom_unit":"xx","precision":4,"requests":[{"aggregator":"sum","conditional_formats":[{"comparator":"<","hide_value":false,"palette":"white_on_green","value":2},{"comparator":">","hide_value":false,"palette":"white_on_red","value":2.2}],"q":"avg:system.load.1{env:staging} by {account}"}],"text_align":"right","title":"Widget Title","type":"query_value"},"id":1291649233159705}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/ad75d61c-735e-11ee-89e7-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"ad75d61c-735e-11ee-89e7-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackQueryValue-local-1698256094","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackQueryValue-local-1698256094","type":"group","widgets":[{"definition":{"autoscale":true,"custom_unit":"xx","precision":4,"requests":[{"aggregator":"sum","conditional_formats":[{"comparator":"<","hide_value":false,"palette":"white_on_green","value":2},{"comparator":">","hide_value":false,"palette":"white_on_red","value":2.2}],"q":"avg:system.load.1{env:staging} by {account}"}],"text_align":"right","title":"Widget Title","type":"query_value"},"id":1291649233159705}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - '*/*' + url: https://api.datadoghq.com/api/v2/powerpacks/ad75d61c-735e-11ee-89e7-da7ad0900002 + method: DELETE + response: + body: "" + headers: + Content-Type: + - text/html; charset=utf-8 + status: 204 No Content + code: 204 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/ad75d61c-735e-11ee-89e7-da7ad0900002 + method: GET + response: + body: '{"errors":["Powerpack with ID ad75d61c-735e-11ee-89e7-da7ad0900002 not found"]}' + headers: + Content-Type: + - application/json + status: 404 Not Found + code: 404 + duration: "" diff --git a/datadog/tests/provider_test.go b/datadog/tests/provider_test.go index f9b16ac6d5..04ca9bef8e 100644 --- a/datadog/tests/provider_test.go +++ b/datadog/tests/provider_test.go @@ -135,6 +135,7 @@ var testFiles2EndpointTags = map[string]string{ "tests/resource_datadog_dashboard_treemap_test": "dashboards", "tests/resource_datadog_powerpack_test": "powerpacks", "tests/resource_datadog_powerpack_alert_graph_test": "powerpacks", + "tests/resource_datadog_powerpack_alert_value_test": "powerpacks", "tests/resource_datadog_powerpack_change_test": "powerpacks", "tests/resource_datadog_powerpack_check_status_test": "powerpacks", "tests/resource_datadog_powerpack_event_stream_test": "powerpacks", @@ -142,6 +143,7 @@ var testFiles2EndpointTags = map[string]string{ "tests/resource_datadog_powerpack_image_test": "powerpacks", "tests/resource_datadog_powerpack_free_text_test": "powerpacks", "tests/resource_datadog_powerpack_note_test": "powerpacks", + "tests/resource_datadog_powerpack_query_value_test": "powerpacks", "tests/resource_datadog_powerpack_servicemap_test": "powerpacks", "tests/resource_datadog_powerpack_toplist_test": "powerpacks", "tests/resource_datadog_powerpack_trace_service_test": "powerpacks", diff --git a/datadog/tests/resource_datadog_powerpack_alert_value_test.go b/datadog/tests/resource_datadog_powerpack_alert_value_test.go new file mode 100644 index 0000000000..910b6a6177 --- /dev/null +++ b/datadog/tests/resource_datadog_powerpack_alert_value_test.go @@ -0,0 +1,68 @@ +package test + +import ( + "testing" +) + +const datadogPowerpackAlertValueTest = ` +resource "datadog_powerpack" "alert_value_powerpack" { + name = "{{uniq}}" + tags = ["tag:foo1"] + description = "Created using the Datadog provider in Terraform" + template_variables { + defaults = ["defaults"] + name = "datacenter" + } + widget { + alert_value_definition { + alert_id = "895605" + } + } + widget { + alert_value_definition { + alert_id = "895606" + precision = 1 + unit = "b" + title_size = "16" + title_align = "center" + title = "Widget Title" + text_align = "center" + } + } +} +` + +var datadogPowerpackAlertValueTestAsserts = []string{ + // Powerpack metadata + "description = Created using the Datadog provider in Terraform", + "widget.# = 2", + "tags.# = 1", + "tags.0 = tag:foo1", + + // Alert Value widgets + "widget.0.alert_value_definition.0.title_align =", + "widget.1.alert_value_definition.0.title_align = center", + "widget.1.alert_value_definition.0.text_align = center", + "widget.1.layout.% = 0", + "widget.0.alert_value_definition.0.precision = 0", + "widget.1.alert_value_definition.0.title_size = 16", + "widget.1.alert_value_definition.0.precision = 1", + "widget.0.alert_value_definition.0.title_size =", + "widget.1.alert_value_definition.0.alert_id = 895606", + "widget.0.alert_value_definition.0.text_align =", + "widget.0.alert_value_definition.0.title =", + "widget.0.alert_value_definition.0.unit =", + "widget.1.alert_value_definition.0.title = Widget Title", + "widget.0.alert_value_definition.0.alert_id = 895605", + "widget.1.alert_value_definition.0.unit = b", + + // Template Variables + "template_variables.# = 1", + "template_variables.0.name = datacenter", + "template_variables.0.defaults.# = 1", + "template_variables.0.defaults.0 = defaults", +} + +func TestAccDatadogPowerpackAlertValue(t *testing.T) { + testAccDatadogDashboardWidgetUtil(t, datadogPowerpackAlertValueTest, "datadog_powerpack.alert_value_powerpack", datadogPowerpackAlertValueTestAsserts) +} diff --git a/datadog/tests/resource_datadog_powerpack_query_value_test.go b/datadog/tests/resource_datadog_powerpack_query_value_test.go new file mode 100644 index 0000000000..929ec9d63d --- /dev/null +++ b/datadog/tests/resource_datadog_powerpack_query_value_test.go @@ -0,0 +1,71 @@ +package test + +import ( + "testing" +) + +const DatadogPowerpackQueryValueTest = ` +resource "datadog_powerpack" "query_value_powerpack" { + name = "{{uniq}}" + tags = ["tag:foo1"] + description = "Created using the Datadog provider in Terraform" + template_variables { + defaults = ["defaults"] + name = "datacenter" + } + widget { + query_value_definition { + request { + q = "avg:system.load.1{env:staging} by {account}" + aggregator = "sum" + conditional_formats { + comparator = "<" + value = "2" + palette = "white_on_green" + } + conditional_formats { + comparator = ">" + value = "2.2" + palette = "white_on_red" + } + } + autoscale = true + custom_unit = "xx" + precision = "4" + text_align = "right" + title = "Widget Title" + } + } +} +` + +var DatadogPowerpackQueryValueTestAsserts = []string{ + // Powerpack metadata + "description = Created using the Datadog provider in Terraform", + "widget.# = 1", + "tags.# = 1", + "tags.0 = tag:foo1", + // Change widget + "widget.0.query_value_definition.0.request.0.q = avg:system.load.1{env:staging} by {account}", + "widget.0.query_value_definition.0.request.0.aggregator = sum", + "widget.0.query_value_definition.0.request.0.conditional_formats.0.comparator = <", + "widget.0.query_value_definition.0.request.0.conditional_formats.0.value = 2", + "widget.0.query_value_definition.0.request.0.conditional_formats.0.palette = white_on_green", + "widget.0.query_value_definition.0.request.0.conditional_formats.1.comparator = >", + "widget.0.query_value_definition.0.request.0.conditional_formats.1.value = 2.2", + "widget.0.query_value_definition.0.request.0.conditional_formats.1.palette = white_on_red", + "widget.0.query_value_definition.0.title = Widget Title", + "widget.0.query_value_definition.0.title = Widget Title", + "widget.0.query_value_definition.0.title = Widget Title", + "widget.0.query_value_definition.0.title = Widget Title", + "widget.0.query_value_definition.0.title = Widget Title", + // Template Variables + "template_variables.# = 1", + "template_variables.0.name = datacenter", + "template_variables.0.defaults.# = 1", + "template_variables.0.defaults.0 = defaults", +} + +func TestAccDatadogPowerpackQueryValue(t *testing.T) { + testAccDatadogPowerpackWidgetUtil(t, DatadogPowerpackQueryValueTest, "datadog_powerpack.query_value_powerpack", DatadogPowerpackQueryValueTestAsserts) +} From e0ba410a0d550c4f862c01939e76b51eb229588c Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Wed, 25 Oct 2023 16:50:44 -0400 Subject: [PATCH 17/48] support for manage status + tests --- datadog/resource_datadog_powerpack.go | 26 ++++++- ...TestAccDatadogPowerpackManageStatus.freeze | 1 + .../TestAccDatadogPowerpackManageStatus.yaml | 73 +++++++++++++++++++ datadog/tests/provider_test.go | 1 + ...ce_datadog_powerpack_manage_status_test.go | 71 ++++++++++++++++++ 5 files changed, 171 insertions(+), 1 deletion(-) create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackManageStatus.freeze create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackManageStatus.yaml create mode 100644 datadog/tests/resource_datadog_powerpack_manage_status_test.go diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index 901926ea72..778dd0bc28 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -365,6 +365,13 @@ func dashboardWidgetsToPpkWidgets(terraformWidgets *[]map[string]interface{}) ([ widgetDef["requests"] = widgetDefRequests delete(widgetDef, "request") } + if widgetDef["custom_link"] != nil { + // Some widgets have a "custom_links" field, while API Spec has a "custom_link" field + // Here we set the "custom_links" field and remove "custom_link" + widgetDefCustomLinks := *widgetDef["custom_link"].(*[]map[string]interface{}) + widgetDef["custom_links"] = widgetDefCustomLinks + delete(widgetDef, "custom_link") + } // The type in the dictionary is in the format _definition, where can contain // a type with multiple underscores. To parse a valid type name, we take a substring up until the last // underscore. Ex: free_text_definition -> free_text, hostmap_definition -> hostmap @@ -397,9 +404,24 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) // Dashboard TF widgets have a "requests" field, while API Spec has a "request" field // Here we set the "request" field and remove "requests" if widgetDefinition["requests"] != nil { - terraformWidget.Definition["request"] = terraformWidget.Definition["requests"] + widgetDefRequests := widgetDefinition["requests"].([]interface{}) + for i, widgetDefRequest := range widgetDefRequests { + widgetDefRequestNormalized := widgetDefRequest.(map[string]interface{}) + if widgetDefRequestNormalized["limit"] != nil { + widgetDefRequestNormalized["limit"] = int(widgetDefRequestNormalized["limit"].(float64)) + } + widgetDefRequests[i] = widgetDefRequestNormalized + } + terraformWidget.Definition["request"] = widgetDefRequests delete(terraformWidget.Definition, "requests") } + // Dashboard TF widgets have a "custom_links" field, while API Spec has a "custom_link" field + // Here we set the "custom_link" field and remove "custom_links" + if widgetDefinition["custom_links"] != nil { + widgetDefCustomLinks := widgetDefinition["custom_links"].([]interface{}) + terraformWidget.Definition["custom_link"] = widgetDefCustomLinks + delete(terraformWidget.Definition, "custom_links") + } // TF -> json conversion processes precision as float64, it needs to be converted to // an int value to be saved successfully if widgetDefinition["precision"] != nil { @@ -422,6 +444,8 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) definition = datadogV1.IFrameWidgetDefinitionAsWidgetDefinition(buildDatadogIframeDefinition(widgetDefinition)) case "image": definition = datadogV1.ImageWidgetDefinitionAsWidgetDefinition(buildDatadogImageDefinition(widgetDefinition)) + case "manage_status": + definition = datadogV1.MonitorSummaryWidgetDefinitionAsWidgetDefinition(buildDatadogManageStatusDefinition(widgetDefinition)) case "note": definition = datadogV1.NoteWidgetDefinitionAsWidgetDefinition(buildDatadogNoteDefinition(widgetDefinition)) case "query_value": diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackManageStatus.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackManageStatus.freeze new file mode 100644 index 0000000000..86919400e9 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackManageStatus.freeze @@ -0,0 +1 @@ +2023-10-25T16:49:53.82276-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackManageStatus.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackManageStatus.yaml new file mode 100644 index 0000000000..224a338869 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackManageStatus.yaml @@ -0,0 +1,73 @@ +--- +version: 1 +interactions: +- request: + body: | + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackManageStatus-local-1698266993","type":"group","widgets":[{"definition":{"color_preference":"background","display_format":"countsAndList","hide_zero_counts":true,"query":"env:prod group_status:alert","show_last_triggered":true,"show_priority":false,"sort":"triggered,desc","summary_type":"combined","title_align":"center","title_size":"20","type":"manage_status"},"layout":{"height":6,"width":4,"x":5,"y":5}}]}},"name":"tf-TestAccDatadogPowerpackManageStatus-local-1698266993","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks + method: POST + response: + body: | + {"data":{"type":"powerpack","id":"0d97bd4e-7378-11ee-a8f1-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackManageStatus-local-1698266993","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackManageStatus-local-1698266993","type":"group","widgets":[{"definition":{"color_preference":"background","display_format":"countsAndList","hide_zero_counts":true,"query":"env:prod group_status:alert","show_last_triggered":true,"show_priority":false,"sort":"triggered,desc","summary_type":"combined","title_align":"center","title_size":"20","type":"manage_status"},"layout":{"height":6,"width":4,"x":5,"y":5},"id":6710807378785707}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/0d97bd4e-7378-11ee-a8f1-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"0d97bd4e-7378-11ee-a8f1-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackManageStatus-local-1698266993","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackManageStatus-local-1698266993","type":"group","widgets":[{"definition":{"color_preference":"background","display_format":"countsAndList","hide_zero_counts":true,"query":"env:prod group_status:alert","show_last_triggered":true,"show_priority":false,"sort":"triggered,desc","summary_type":"combined","title_align":"center","title_size":"20","type":"manage_status"},"layout":{"height":6,"width":4,"x":5,"y":5},"id":6710807378785707}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/0d97bd4e-7378-11ee-a8f1-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"0d97bd4e-7378-11ee-a8f1-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackManageStatus-local-1698266993","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackManageStatus-local-1698266993","type":"group","widgets":[{"definition":{"color_preference":"background","display_format":"countsAndList","hide_zero_counts":true,"query":"env:prod group_status:alert","show_last_triggered":true,"show_priority":false,"sort":"triggered,desc","summary_type":"combined","title_align":"center","title_size":"20","type":"manage_status"},"layout":{"height":6,"width":4,"x":5,"y":5},"id":6710807378785707}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - '*/*' + url: https://api.datadoghq.com/api/v2/powerpacks/0d97bd4e-7378-11ee-a8f1-da7ad0900002 + method: DELETE + response: + body: "" + headers: + Content-Type: + - text/html; charset=utf-8 + status: 204 No Content + code: 204 + duration: "" diff --git a/datadog/tests/provider_test.go b/datadog/tests/provider_test.go index 04ca9bef8e..230b17fca6 100644 --- a/datadog/tests/provider_test.go +++ b/datadog/tests/provider_test.go @@ -142,6 +142,7 @@ var testFiles2EndpointTags = map[string]string{ "tests/resource_datadog_powerpack_iframe_test": "powerpacks", "tests/resource_datadog_powerpack_image_test": "powerpacks", "tests/resource_datadog_powerpack_free_text_test": "powerpacks", + "tests/resource_datadog_powerpack_manage_status_test": "powerpacks", "tests/resource_datadog_powerpack_note_test": "powerpacks", "tests/resource_datadog_powerpack_query_value_test": "powerpacks", "tests/resource_datadog_powerpack_servicemap_test": "powerpacks", diff --git a/datadog/tests/resource_datadog_powerpack_manage_status_test.go b/datadog/tests/resource_datadog_powerpack_manage_status_test.go new file mode 100644 index 0000000000..37fa34651a --- /dev/null +++ b/datadog/tests/resource_datadog_powerpack_manage_status_test.go @@ -0,0 +1,71 @@ +package test + +import ( + "testing" +) + +const datadogPowerpackManageStatusTest = ` +resource "datadog_powerpack" "manage_status_powerpack" { + name = "{{uniq}}" + tags = ["tag:foo1"] + description = "Created using the Datadog provider in Terraform" + template_variables { + defaults = ["defaults"] + name = "datacenter" + } + widget { + manage_status_definition { + sort = "triggered,desc" + title_size = "20" + title = "" + title_align = "center" + hide_zero_counts = true + summary_type = "combined" + color_preference = "background" + query = "env:prod group_status:alert" + show_last_triggered = true + display_format = "countsAndList" + } + widget_layout { + height = 6 + width = 4 + x = 5 + y = 5 + } + } +} +` + +var datadogPowerpackManageStatusTestAsserts = []string{ + // Powerpack metadata + "description = Created using the Datadog provider in Terraform", + "widget.# = 1", + "tags.# = 1", + "tags.0 = tag:foo1", + + // Manage Status widgets + "widget.0.manage_status_definition.0.color_preference = background", + "widget.0.widget_layout.0.x = 5", + "widget.0.widget_layout.0.height = 6", + "widget.0.manage_status_definition.0.display_format = countsAndList", + "widget.0.widget_layout.0.width = 4", + "widget.0.manage_status_definition.0.hide_zero_counts = true", + "widget.0.widget_layout.0.y = 5", + "widget.0.manage_status_definition.0.summary_type = combined", + "widget.0.manage_status_definition.0.show_last_triggered = true", + "widget.0.manage_status_definition.0.title =", + "widget.0.manage_status_definition.0.title_size = 20", + "widget.0.manage_status_definition.0.sort = triggered,desc", + "widget.0.manage_status_definition.0.title_align = center", + "widget.0.manage_status_definition.0.show_priority = false", + "widget.0.manage_status_definition.0.query = env:prod group_status:alert", + // Template Variables + "template_variables.# = 1", + "template_variables.0.name = datacenter", + "template_variables.0.defaults.# = 1", + "template_variables.0.defaults.0 = defaults", +} + +func TestAccDatadogPowerpackManageStatus(t *testing.T) { + testAccDatadogDashboardWidgetUtil(t, datadogPowerpackManageStatusTest, "datadog_powerpack.manage_status_powerpack", datadogPowerpackManageStatusTestAsserts) +} From 0e3875f386412d93cff22fc97be8abaef1d48028 Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Wed, 25 Oct 2023 17:13:59 -0400 Subject: [PATCH 18/48] support for event timeline + tests --- datadog/resource_datadog_powerpack.go | 2 + ...estAccDatadogPowerpackEventTimeline.freeze | 1 + .../TestAccDatadogPowerpackEventTimeline.yaml | 73 +++++++++++++++++++ datadog/tests/provider_test.go | 1 + ...e_datadog_powerpack_event_timeline_test.go | 61 ++++++++++++++++ 5 files changed, 138 insertions(+) create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackEventTimeline.freeze create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackEventTimeline.yaml create mode 100644 datadog/tests/resource_datadog_powerpack_event_timeline_test.go diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index 778dd0bc28..fdfd4c4f36 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -438,6 +438,8 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) definition = datadogV1.CheckStatusWidgetDefinitionAsWidgetDefinition(buildDatadogCheckStatusDefinition(widgetDefinition)) case "event_stream": definition = datadogV1.EventStreamWidgetDefinitionAsWidgetDefinition(buildDatadogEventStreamDefinition(widgetDefinition)) + case "event_timeline": + definition = datadogV1.EventTimelineWidgetDefinitionAsWidgetDefinition(buildDatadogEventTimelineDefinition(widgetDefinition)) case "free_text": definition = datadogV1.FreeTextWidgetDefinitionAsWidgetDefinition(buildDatadogFreeTextDefinition(widgetDefinition)) case "iframe": diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackEventTimeline.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackEventTimeline.freeze new file mode 100644 index 0000000000..5a9b899030 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackEventTimeline.freeze @@ -0,0 +1 @@ +2023-10-25T17:13:08.561283-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackEventTimeline.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackEventTimeline.yaml new file mode 100644 index 0000000000..343568b5b6 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackEventTimeline.yaml @@ -0,0 +1,73 @@ +--- +version: 1 +interactions: +- request: + body: | + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackEventTimeline-local-1698268388","type":"group","widgets":[{"definition":{"query":"status:error","tags_execution":"and","title":"Widget Title","title_align":"right","title_size":"16","type":"event_timeline"},"layout":{"height":4,"width":3,"x":5,"y":5}}]}},"name":"tf-TestAccDatadogPowerpackEventTimeline-local-1698268388","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks + method: POST + response: + body: | + {"data":{"type":"powerpack","id":"4cf505ac-737b-11ee-b420-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackEventTimeline-local-1698268388","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackEventTimeline-local-1698268388","type":"group","widgets":[{"definition":{"query":"status:error","tags_execution":"and","title":"Widget Title","title_align":"right","title_size":"16","type":"event_timeline"},"layout":{"height":4,"width":3,"x":5,"y":5},"id":8240340836412169}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/4cf505ac-737b-11ee-b420-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"4cf505ac-737b-11ee-b420-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackEventTimeline-local-1698268388","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackEventTimeline-local-1698268388","type":"group","widgets":[{"definition":{"query":"status:error","tags_execution":"and","title":"Widget Title","title_align":"right","title_size":"16","type":"event_timeline"},"layout":{"height":4,"width":3,"x":5,"y":5},"id":8240340836412169}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/4cf505ac-737b-11ee-b420-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"4cf505ac-737b-11ee-b420-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackEventTimeline-local-1698268388","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackEventTimeline-local-1698268388","type":"group","widgets":[{"definition":{"query":"status:error","tags_execution":"and","title":"Widget Title","title_align":"right","title_size":"16","type":"event_timeline"},"layout":{"height":4,"width":3,"x":5,"y":5},"id":8240340836412169}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - '*/*' + url: https://api.datadoghq.com/api/v2/powerpacks/4cf505ac-737b-11ee-b420-da7ad0900002 + method: DELETE + response: + body: "" + headers: + Content-Type: + - text/html; charset=utf-8 + status: 204 No Content + code: 204 + duration: "" diff --git a/datadog/tests/provider_test.go b/datadog/tests/provider_test.go index 230b17fca6..7e69b67563 100644 --- a/datadog/tests/provider_test.go +++ b/datadog/tests/provider_test.go @@ -139,6 +139,7 @@ var testFiles2EndpointTags = map[string]string{ "tests/resource_datadog_powerpack_change_test": "powerpacks", "tests/resource_datadog_powerpack_check_status_test": "powerpacks", "tests/resource_datadog_powerpack_event_stream_test": "powerpacks", + "tests/resource_datadog_powerpack_event_timeline_test": "powerpacks", "tests/resource_datadog_powerpack_iframe_test": "powerpacks", "tests/resource_datadog_powerpack_image_test": "powerpacks", "tests/resource_datadog_powerpack_free_text_test": "powerpacks", diff --git a/datadog/tests/resource_datadog_powerpack_event_timeline_test.go b/datadog/tests/resource_datadog_powerpack_event_timeline_test.go new file mode 100644 index 0000000000..8645bb6da4 --- /dev/null +++ b/datadog/tests/resource_datadog_powerpack_event_timeline_test.go @@ -0,0 +1,61 @@ +package test + +import ( + "testing" +) + +const datadogPowerpackEventTimelineTest = ` +resource "datadog_powerpack" "event_timeline_powerpack" { + name = "{{uniq}}" + tags = ["tag:foo1"] + description = "Created using the Datadog provider in Terraform" + template_variables { + defaults = ["defaults"] + name = "datacenter" + } + widget { + event_timeline_definition { + title = "Widget Title" + title_align = "right" + title_size = "16" + tags_execution = "and" + query = "status:error" + } + widget_layout { + height = 4 + width = 3 + x = 5 + y = 5 + } + } +} +` + +var datadogPowerpackEventTimelineTestAsserts = []string{ + // Powerpack metadata + "description = Created using the Datadog provider in Terraform", + "widget.# = 1", + "tags.# = 1", + "tags.0 = tag:foo1", + + // Event timeline widgets + "widget.0.widget_layout.0.y = 5", + "widget.0.event_timeline_definition.0.title_align = right", + "widget.0.widget_layout.0.x = 5", + "widget.0.widget_layout.0.width = 3", + "widget.0.event_timeline_definition.0.title_size = 16", + "widget.0.event_timeline_definition.0.query = status:error", + "widget.0.event_timeline_definition.0.title = Widget Title", + "widget.0.event_timeline_definition.0.tags_execution = and", + "widget.0.widget_layout.0.height = 4", + + // Template Variables + "template_variables.# = 1", + "template_variables.0.name = datacenter", + "template_variables.0.defaults.# = 1", + "template_variables.0.defaults.0 = defaults", +} + +func TestAccDatadogPowerpackEventTimeline(t *testing.T) { + testAccDatadogDashboardWidgetUtil(t, datadogPowerpackEventTimelineTest, "datadog_powerpack.event_timeline_powerpack", datadogPowerpackEventTimelineTestAsserts) +} From 0e99a4ca05e14d53576708b32083d052d21d6457 Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Wed, 25 Oct 2023 17:14:31 -0400 Subject: [PATCH 19/48] update docs --- docs/resources/powerpack.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/resources/powerpack.md b/docs/resources/powerpack.md index b83cc1ce05..930b374312 100644 --- a/docs/resources/powerpack.md +++ b/docs/resources/powerpack.md @@ -18,6 +18,7 @@ Provides a Datadog powerpack resource. This can be used to create and manage Dat ### Optional - `description` (String) The description of the powerpack. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. - `name` (String) The name for the powerpack. - `show_title` (Boolean) Whether or not title should be displayed in the powerpack. - `tags` (List of String) List of tags to identify this powerpack. From e7dc0eb18abdeedd7e5e8e890ceb8f3cc740203b Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Wed, 25 Oct 2023 17:21:17 -0400 Subject: [PATCH 20/48] update go api spec version to latest master --- go.mod | 2 +- go.sum | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/go.mod b/go.mod index ea83511352..56637dd9a8 100644 --- a/go.mod +++ b/go.mod @@ -1,7 +1,7 @@ module github.com/terraform-providers/terraform-provider-datadog require ( - github.com/DataDog/datadog-api-client-go/v2 v2.18.1-0.20231024184046-df036bc40dfc + github.com/DataDog/datadog-api-client-go/v2 v2.18.1-0.20231025164835-288b147cf4b3 github.com/DataDog/dd-sdk-go-testing v0.0.0-20211116174033-1cd082e322ad github.com/dnaeon/go-vcr v1.0.1 github.com/hashicorp/go-cleanhttp v0.5.2 diff --git a/go.sum b/go.sum index b69a189569..5501cdd099 100644 --- a/go.sum +++ b/go.sum @@ -8,6 +8,8 @@ github.com/DataDog/datadog-api-client-go/v2 v2.18.1-0.20231024180157-06315a33e5f github.com/DataDog/datadog-api-client-go/v2 v2.18.1-0.20231024180157-06315a33e5f7/go.mod h1:lHlfhsNQ2qZclvpVQTfrGowUDIdIzAao38A05f9EQpc= github.com/DataDog/datadog-api-client-go/v2 v2.18.1-0.20231024184046-df036bc40dfc h1:p8LbmurY9vd/T9cbZ91P0DynxySOt5JGUz4iwHj/B30= github.com/DataDog/datadog-api-client-go/v2 v2.18.1-0.20231024184046-df036bc40dfc/go.mod h1:lHlfhsNQ2qZclvpVQTfrGowUDIdIzAao38A05f9EQpc= +github.com/DataDog/datadog-api-client-go/v2 v2.18.1-0.20231025164835-288b147cf4b3 h1:NyT2PvbsV+/suodCSSaLjpI7CVWOtDEIdL9T8aja+z4= +github.com/DataDog/datadog-api-client-go/v2 v2.18.1-0.20231025164835-288b147cf4b3/go.mod h1:lHlfhsNQ2qZclvpVQTfrGowUDIdIzAao38A05f9EQpc= github.com/DataDog/datadog-go v4.4.0+incompatible/go.mod h1:LButxg5PwREeZtORoXG3tL4fMGNddJ+vMq1mwgfaqoQ= github.com/DataDog/datadog-go v4.8.3+incompatible h1:fNGaYSuObuQb5nzeTQqowRAd9bpDIRRV4/gUtIBjh8Q= github.com/DataDog/datadog-go v4.8.3+incompatible/go.mod h1:LButxg5PwREeZtORoXG3tL4fMGNddJ+vMq1mwgfaqoQ= From 7ef37d9be0690a92eb469ce7376d62de9f8cf2f0 Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Wed, 25 Oct 2023 17:38:36 -0400 Subject: [PATCH 21/48] update method --- datadog/resource_datadog_powerpack.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index fdfd4c4f36..bdf2fc7856 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -299,7 +299,7 @@ func buildDatadogPowerpack(ctx context.Context, d *schema.ResourceData) (*datado // Set Live span for all powerpack widgets. if v, ok := d.GetOk("live_span"); ok { - liveSpan, err := datadogV2.NewPowerpackGroupWidgetLiveSpanFromValue(v.(string)) + liveSpan, err := datadogV2.NewWidgetLiveSpanFromValue(v.(string)) if err != nil { diags = append(diags, diag.Diagnostic{ Severity: diag.Error, From b7827e33816f816661dfa3e353b733dd51f06d27 Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Thu, 26 Oct 2023 13:14:43 -0400 Subject: [PATCH 22/48] address brandon's cr --- datadog/resource_datadog_powerpack.go | 14 +- .../TestAccDatadogPowerpackAlertGraph.freeze | 2 +- .../TestAccDatadogPowerpackAlertGraph.yaml | 196 +++++++++++++++++- ...urce_datadog_powerpack_alert_graph_test.go | 17 +- 4 files changed, 214 insertions(+), 15 deletions(-) diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index e11a263706..f65fd718e9 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -379,10 +379,22 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) definition = datadogV1.NoteWidgetDefinitionAsWidgetDefinition(buildDatadogNoteDefinition(widgetDefinition)) case "servicemap": definition = datadogV1.ServiceMapWidgetDefinitionAsWidgetDefinition(buildDatadogServiceMapDefinition(widgetDefinition)) + case "group": + diags = append(diags, diag.Diagnostic{ + Severity: diag.Error, + Summary: fmt.Sprintf("powerpacks cannot contain group widgets"), + }) + continue + case "powerpack": + diags = append(diags, diag.Diagnostic{ + Severity: diag.Error, + Summary: fmt.Sprintf("powerpacks cannot contain powerpack widgets"), + }) + continue default: diags = append(diags, diag.Diagnostic{ Severity: diag.Error, - Summary: fmt.Sprintf("unsupported widget type: %s", terraformWidget.Definition["type"]), + Summary: fmt.Sprintf("support for this widget type is still in progress: %s", terraformWidget.Definition["type"]), }) continue } diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.freeze index 8171ec005f..5bdfbd4add 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.freeze @@ -1 +1 @@ -2023-10-24T13:00:19.993039-04:00 \ No newline at end of file +2023-10-26T13:13:13.027273-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.yaml index f5ddd51801..e330d1af2e 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.yaml +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.yaml @@ -3,7 +3,87 @@ version: 1 interactions: - request: body: | - {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698166819","type":"group","widgets":[{"definition":{"alert_id":"895605","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"}}]}},"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698166819","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + {"message":"some message Notify: @hipchat-channel","name":"%s","options":{"escalation_message":"the situation has escalated @pagerduty","include_tags":true,"new_host_delay":300,"no_data_timeframe":10,"notify_no_data":false,"require_full_window":true,"thresholds":{"critical":2,"warning":1}},"priority":0,"query":"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} \u003e 2","restricted_roles":null,"tags":[],"type":"metric alert"} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v1/monitor/validate + method: POST + response: + body: | + {} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: | + {"message":"some message Notify: @hipchat-channel","name":"%s","options":{"escalation_message":"the situation has escalated @pagerduty","include_tags":true,"new_host_delay":300,"no_data_timeframe":10,"notify_no_data":false,"require_full_window":true,"thresholds":{"critical":2,"warning":1}},"priority":0,"query":"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} \u003e 2","restricted_roles":null,"tags":[],"type":"metric alert"} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v1/monitor/validate + method: POST + response: + body: | + {} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: | + {"message":"some message Notify: @hipchat-channel","name":"%s","options":{"escalation_message":"the situation has escalated @pagerduty","include_tags":true,"new_host_delay":300,"no_data_timeframe":10,"notify_no_data":false,"require_full_window":true,"thresholds":{"critical":2,"warning":1}},"priority":0,"query":"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} \u003e 2","restricted_roles":null,"tags":[],"type":"metric alert"} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v1/monitor/validate + method: POST + response: + body: | + {} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: | + {"message":"some message Notify: @hipchat-channel","name":"%s","options":{"escalation_message":"the situation has escalated @pagerduty","include_tags":true,"new_host_delay":300,"notify_no_data":false,"require_full_window":true,"thresholds":{"critical":2,"warning":1}},"priority":0,"query":"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} \u003e 2","restricted_roles":null,"tags":[],"type":"metric alert"} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v1/monitor + method: POST + response: + body: | + {"id":133776239,"org_id":321813,"type":"metric alert","name":"%s","message":"some message Notify: @hipchat-channel","tags":[],"query":"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} > 2","options":{"escalation_message":"the situation has escalated @pagerduty","include_tags":true,"new_host_delay":300,"notify_no_data":false,"require_full_window":true,"thresholds":{"critical":2.0,"warning":1.0},"notify_audit":false,"silenced":{}},"multi":true,"created_at":1698340395000,"created":"2023-10-26T17:13:15.398696+00:00","modified":"2023-10-26T17:13:15.398696+00:00","deleted":null,"restricted_roles":null,"priority":null,"overall_state_modified":null,"overall_state":"No Data","creator":{"name":null,"handle":"frog@datadoghq.com","email":"frog@datadoghq.com","id":1445416}} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: | + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698340393","type":"group","widgets":[{"definition":{"alert_id":"133776239","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"}}]}},"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698340393","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} form: {} headers: Accept: @@ -14,7 +94,7 @@ interactions: method: POST response: body: | - {"data":{"type":"powerpack","id":"d2de801e-728e-11ee-8d1f-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698166819","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698166819","type":"group","widgets":[{"definition":{"alert_id":"895605","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"},"id":1754374040124311}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"f37f3e0e-7422-11ee-a8b4-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698340393","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698340393","type":"group","widgets":[{"definition":{"alert_id":"133776239","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"},"id":1578017363072818}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -27,11 +107,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/d2de801e-728e-11ee-8d1f-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/f37f3e0e-7422-11ee-a8b4-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"d2de801e-728e-11ee-8d1f-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698166819","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698166819","type":"group","widgets":[{"definition":{"alert_id":"895605","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"},"id":1754374040124311}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"f37f3e0e-7422-11ee-a8b4-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698340393","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698340393","type":"group","widgets":[{"definition":{"alert_id":"133776239","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"},"id":1578017363072818}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -44,11 +124,68 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/d2de801e-728e-11ee-8d1f-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/f37f3e0e-7422-11ee-a8b4-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"d2de801e-728e-11ee-8d1f-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698166819","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698166819","type":"group","widgets":[{"definition":{"alert_id":"895605","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"},"id":1754374040124311}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"f37f3e0e-7422-11ee-a8b4-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698340393","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698340393","type":"group","widgets":[{"definition":{"alert_id":"133776239","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"},"id":1578017363072818}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: | + {"message":"some message Notify: @hipchat-channel","name":"%s","options":{"escalation_message":"the situation has escalated @pagerduty","include_tags":true,"new_host_delay":300,"no_data_timeframe":10,"notify_no_data":false,"require_full_window":true,"thresholds":{"critical":2,"warning":1}},"priority":0,"query":"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} \u003e 2","restricted_roles":null,"tags":[],"type":"metric alert"} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v1/monitor/133776239/validate + method: POST + response: + body: | + {} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v1/monitor/133776239 + method: GET + response: + body: | + {"id":133776239,"org_id":321813,"type":"metric alert","name":"%s","message":"some message Notify: @hipchat-channel","tags":[],"query":"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} > 2","options":{"escalation_message":"the situation has escalated @pagerduty","include_tags":true,"new_host_delay":300,"notify_no_data":false,"require_full_window":true,"thresholds":{"critical":2.0,"warning":1.0},"notify_audit":false,"silenced":{}},"multi":true,"created_at":1698340395000,"created":"2023-10-26T17:13:15.398696+00:00","modified":"2023-10-26T17:13:15.398696+00:00","deleted":null,"restricted_roles":null,"priority":null,"overall_state_modified":null,"overall_state":"No Data","creator":{"name":null,"handle":"frog@datadoghq.com","email":"frog@datadoghq.com","id":1445416}} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: | + {"message":"some message Notify: @hipchat-channel","name":"%s","options":{"escalation_message":"the situation has escalated @pagerduty","include_tags":true,"new_host_delay":300,"no_data_timeframe":10,"notify_no_data":false,"require_full_window":true,"thresholds":{"critical":2,"warning":1}},"priority":0,"query":"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} \u003e 2","restricted_roles":null,"tags":[],"type":"metric alert"} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v1/monitor/133776239/validate + method: POST + response: + body: | + {} headers: Content-Type: - application/json @@ -61,11 +198,31 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/d2de801e-728e-11ee-8d1f-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/f37f3e0e-7422-11ee-a8b4-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"d2de801e-728e-11ee-8d1f-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698166819","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698166819","type":"group","widgets":[{"definition":{"alert_id":"895605","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"},"id":1754374040124311}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"f37f3e0e-7422-11ee-a8b4-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698340393","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698340393","type":"group","widgets":[{"definition":{"alert_id":"133776239","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"},"id":1578017363072818}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: | + {"message":"some message Notify: @hipchat-channel","name":"%s","options":{"escalation_message":"the situation has escalated @pagerduty","include_tags":true,"new_host_delay":300,"no_data_timeframe":10,"notify_no_data":false,"require_full_window":true,"thresholds":{"critical":2,"warning":1}},"priority":0,"query":"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} \u003e 2","restricted_roles":null,"tags":[],"type":"metric alert"} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v1/monitor/133776239/validate + method: POST + response: + body: | + {} headers: Content-Type: - application/json @@ -78,7 +235,7 @@ interactions: headers: Accept: - '*/*' - url: https://api.datadoghq.com/api/v2/powerpacks/d2de801e-728e-11ee-8d1f-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/f37f3e0e-7422-11ee-a8b4-da7ad0900002 method: DELETE response: body: "" @@ -94,10 +251,27 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/d2de801e-728e-11ee-8d1f-da7ad0900002 + url: https://api.datadoghq.com/api/v1/monitor/133776239 + method: DELETE + response: + body: | + {"deleted_monitor_id":133776239} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/f37f3e0e-7422-11ee-a8b4-da7ad0900002 method: GET response: - body: '{"errors":["Powerpack with ID d2de801e-728e-11ee-8d1f-da7ad0900002 not found"]}' + body: '{"errors":["Powerpack with ID f37f3e0e-7422-11ee-a8b4-da7ad0900002 not found"]}' headers: Content-Type: - application/json diff --git a/datadog/tests/resource_datadog_powerpack_alert_graph_test.go b/datadog/tests/resource_datadog_powerpack_alert_graph_test.go index b9e8c9290a..09f2e0eef6 100644 --- a/datadog/tests/resource_datadog_powerpack_alert_graph_test.go +++ b/datadog/tests/resource_datadog_powerpack_alert_graph_test.go @@ -5,6 +5,20 @@ import ( ) const datadogPowerpackAlertGraphTest = ` + resource "datadog_monitor" "downtime_monitor" { + name = "%s" + type = "metric alert" + message = "some message Notify: @hipchat-channel" + escalation_message = "the situation has escalated @pagerduty" + + query = "avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} > 2" + + monitor_thresholds { + warning = "1.0" + critical = "2.0" + } + } + resource "datadog_powerpack" "alert_graph_powerpack" { name = "{{uniq}}" tags = ["tag:foo1"] @@ -15,7 +29,7 @@ resource "datadog_powerpack" "alert_graph_powerpack" { } widget { alert_graph_definition { - alert_id = "895605" + alert_id = "${datadog_monitor.downtime_monitor.id}" viz_type = "timeseries" title = "Widget Title" title_align = "center" @@ -32,7 +46,6 @@ var datadogPowerpackAlertGraphTestAsserts = []string{ "tags.# = 1", "tags.0 = tag:foo1", // Alert Graph widget - "widget.0.alert_graph_definition.0.alert_id = 895605", "widget.0.alert_graph_definition.0.viz_type = timeseries", "widget.0.alert_graph_definition.0.title = Widget Title", "widget.0.alert_graph_definition.0.title_align = center", From 5d27cee13436b077a21fe67aa6152f34a3a13fbf Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Thu, 26 Oct 2023 14:23:08 -0400 Subject: [PATCH 23/48] fix monitor name --- .../TestAccDatadogPowerpackAlertGraph.freeze | 2 +- .../TestAccDatadogPowerpackAlertGraph.yaml | 52 +++++++++---------- ...urce_datadog_powerpack_alert_graph_test.go | 3 +- 3 files changed, 29 insertions(+), 28 deletions(-) diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.freeze index 5bdfbd4add..a65287f1d6 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.freeze @@ -1 +1 @@ -2023-10-26T13:13:13.027273-04:00 \ No newline at end of file +2023-10-26T14:21:41.637769-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.yaml index e330d1af2e..8692fc5ac5 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.yaml +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackAlertGraph.yaml @@ -3,7 +3,7 @@ version: 1 interactions: - request: body: | - {"message":"some message Notify: @hipchat-channel","name":"%s","options":{"escalation_message":"the situation has escalated @pagerduty","include_tags":true,"new_host_delay":300,"no_data_timeframe":10,"notify_no_data":false,"require_full_window":true,"thresholds":{"critical":2,"warning":1}},"priority":0,"query":"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} \u003e 2","restricted_roles":null,"tags":[],"type":"metric alert"} + {"message":"some message Notify: @hipchat-channel","name":"monitor","options":{"escalation_message":"the situation has escalated @pagerduty","include_tags":true,"new_host_delay":300,"no_data_timeframe":10,"notify_no_data":false,"require_full_window":true,"thresholds":{"critical":2,"warning":1}},"priority":0,"query":"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} \u003e 2","restricted_roles":null,"tags":[],"type":"metric alert"} form: {} headers: Accept: @@ -23,7 +23,7 @@ interactions: duration: "" - request: body: | - {"message":"some message Notify: @hipchat-channel","name":"%s","options":{"escalation_message":"the situation has escalated @pagerduty","include_tags":true,"new_host_delay":300,"no_data_timeframe":10,"notify_no_data":false,"require_full_window":true,"thresholds":{"critical":2,"warning":1}},"priority":0,"query":"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} \u003e 2","restricted_roles":null,"tags":[],"type":"metric alert"} + {"message":"some message Notify: @hipchat-channel","name":"monitor","options":{"escalation_message":"the situation has escalated @pagerduty","include_tags":true,"new_host_delay":300,"no_data_timeframe":10,"notify_no_data":false,"require_full_window":true,"thresholds":{"critical":2,"warning":1}},"priority":0,"query":"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} \u003e 2","restricted_roles":null,"tags":[],"type":"metric alert"} form: {} headers: Accept: @@ -43,7 +43,7 @@ interactions: duration: "" - request: body: | - {"message":"some message Notify: @hipchat-channel","name":"%s","options":{"escalation_message":"the situation has escalated @pagerduty","include_tags":true,"new_host_delay":300,"no_data_timeframe":10,"notify_no_data":false,"require_full_window":true,"thresholds":{"critical":2,"warning":1}},"priority":0,"query":"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} \u003e 2","restricted_roles":null,"tags":[],"type":"metric alert"} + {"message":"some message Notify: @hipchat-channel","name":"monitor","options":{"escalation_message":"the situation has escalated @pagerduty","include_tags":true,"new_host_delay":300,"no_data_timeframe":10,"notify_no_data":false,"require_full_window":true,"thresholds":{"critical":2,"warning":1}},"priority":0,"query":"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} \u003e 2","restricted_roles":null,"tags":[],"type":"metric alert"} form: {} headers: Accept: @@ -63,7 +63,7 @@ interactions: duration: "" - request: body: | - {"message":"some message Notify: @hipchat-channel","name":"%s","options":{"escalation_message":"the situation has escalated @pagerduty","include_tags":true,"new_host_delay":300,"notify_no_data":false,"require_full_window":true,"thresholds":{"critical":2,"warning":1}},"priority":0,"query":"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} \u003e 2","restricted_roles":null,"tags":[],"type":"metric alert"} + {"message":"some message Notify: @hipchat-channel","name":"monitor","options":{"escalation_message":"the situation has escalated @pagerduty","include_tags":true,"new_host_delay":300,"notify_no_data":false,"require_full_window":true,"thresholds":{"critical":2,"warning":1}},"priority":0,"query":"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} \u003e 2","restricted_roles":null,"tags":[],"type":"metric alert"} form: {} headers: Accept: @@ -74,7 +74,7 @@ interactions: method: POST response: body: | - {"id":133776239,"org_id":321813,"type":"metric alert","name":"%s","message":"some message Notify: @hipchat-channel","tags":[],"query":"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} > 2","options":{"escalation_message":"the situation has escalated @pagerduty","include_tags":true,"new_host_delay":300,"notify_no_data":false,"require_full_window":true,"thresholds":{"critical":2.0,"warning":1.0},"notify_audit":false,"silenced":{}},"multi":true,"created_at":1698340395000,"created":"2023-10-26T17:13:15.398696+00:00","modified":"2023-10-26T17:13:15.398696+00:00","deleted":null,"restricted_roles":null,"priority":null,"overall_state_modified":null,"overall_state":"No Data","creator":{"name":null,"handle":"frog@datadoghq.com","email":"frog@datadoghq.com","id":1445416}} + {"id":133780693,"org_id":321813,"type":"metric alert","name":"monitor","message":"some message Notify: @hipchat-channel","tags":[],"query":"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} > 2","options":{"escalation_message":"the situation has escalated @pagerduty","include_tags":true,"new_host_delay":300,"notify_no_data":false,"require_full_window":true,"thresholds":{"critical":2.0,"warning":1.0},"notify_audit":false,"silenced":{}},"multi":true,"created_at":1698344504000,"created":"2023-10-26T18:21:44.025113+00:00","modified":"2023-10-26T18:21:44.025113+00:00","deleted":null,"restricted_roles":null,"priority":null,"overall_state_modified":null,"overall_state":"No Data","creator":{"name":null,"handle":"frog@datadoghq.com","email":"frog@datadoghq.com","id":1445416}} headers: Content-Type: - application/json @@ -83,7 +83,7 @@ interactions: duration: "" - request: body: | - {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698340393","type":"group","widgets":[{"definition":{"alert_id":"133776239","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"}}]}},"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698340393","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698344501","type":"group","widgets":[{"definition":{"alert_id":"133780693","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"}}]}},"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698344501","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} form: {} headers: Accept: @@ -94,7 +94,7 @@ interactions: method: POST response: body: | - {"data":{"type":"powerpack","id":"f37f3e0e-7422-11ee-a8b4-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698340393","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698340393","type":"group","widgets":[{"definition":{"alert_id":"133776239","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"},"id":1578017363072818}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"8463dd36-742c-11ee-b7f5-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698344501","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698344501","type":"group","widgets":[{"definition":{"alert_id":"133780693","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"},"id":139029612912591}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -107,11 +107,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/f37f3e0e-7422-11ee-a8b4-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/8463dd36-742c-11ee-b7f5-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"f37f3e0e-7422-11ee-a8b4-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698340393","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698340393","type":"group","widgets":[{"definition":{"alert_id":"133776239","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"},"id":1578017363072818}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"8463dd36-742c-11ee-b7f5-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698344501","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698344501","type":"group","widgets":[{"definition":{"alert_id":"133780693","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"},"id":139029612912591}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -124,11 +124,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/f37f3e0e-7422-11ee-a8b4-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/8463dd36-742c-11ee-b7f5-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"f37f3e0e-7422-11ee-a8b4-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698340393","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698340393","type":"group","widgets":[{"definition":{"alert_id":"133776239","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"},"id":1578017363072818}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"8463dd36-742c-11ee-b7f5-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698344501","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698344501","type":"group","widgets":[{"definition":{"alert_id":"133780693","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"},"id":139029612912591}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -137,14 +137,14 @@ interactions: duration: "" - request: body: | - {"message":"some message Notify: @hipchat-channel","name":"%s","options":{"escalation_message":"the situation has escalated @pagerduty","include_tags":true,"new_host_delay":300,"no_data_timeframe":10,"notify_no_data":false,"require_full_window":true,"thresholds":{"critical":2,"warning":1}},"priority":0,"query":"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} \u003e 2","restricted_roles":null,"tags":[],"type":"metric alert"} + {"message":"some message Notify: @hipchat-channel","name":"monitor","options":{"escalation_message":"the situation has escalated @pagerduty","include_tags":true,"new_host_delay":300,"no_data_timeframe":10,"notify_no_data":false,"require_full_window":true,"thresholds":{"critical":2,"warning":1}},"priority":0,"query":"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} \u003e 2","restricted_roles":null,"tags":[],"type":"metric alert"} form: {} headers: Accept: - application/json Content-Type: - application/json - url: https://api.datadoghq.com/api/v1/monitor/133776239/validate + url: https://api.datadoghq.com/api/v1/monitor/133780693/validate method: POST response: body: | @@ -161,11 +161,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v1/monitor/133776239 + url: https://api.datadoghq.com/api/v1/monitor/133780693 method: GET response: body: | - {"id":133776239,"org_id":321813,"type":"metric alert","name":"%s","message":"some message Notify: @hipchat-channel","tags":[],"query":"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} > 2","options":{"escalation_message":"the situation has escalated @pagerduty","include_tags":true,"new_host_delay":300,"notify_no_data":false,"require_full_window":true,"thresholds":{"critical":2.0,"warning":1.0},"notify_audit":false,"silenced":{}},"multi":true,"created_at":1698340395000,"created":"2023-10-26T17:13:15.398696+00:00","modified":"2023-10-26T17:13:15.398696+00:00","deleted":null,"restricted_roles":null,"priority":null,"overall_state_modified":null,"overall_state":"No Data","creator":{"name":null,"handle":"frog@datadoghq.com","email":"frog@datadoghq.com","id":1445416}} + {"id":133780693,"org_id":321813,"type":"metric alert","name":"monitor","message":"some message Notify: @hipchat-channel","tags":[],"query":"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} > 2","options":{"escalation_message":"the situation has escalated @pagerduty","include_tags":true,"new_host_delay":300,"notify_no_data":false,"require_full_window":true,"thresholds":{"critical":2.0,"warning":1.0},"notify_audit":false,"silenced":{}},"multi":true,"created_at":1698344504000,"created":"2023-10-26T18:21:44.025113+00:00","modified":"2023-10-26T18:21:44.025113+00:00","deleted":null,"restricted_roles":null,"priority":null,"overall_state_modified":null,"overall_state":"No Data","creator":{"name":null,"handle":"frog@datadoghq.com","email":"frog@datadoghq.com","id":1445416}} headers: Content-Type: - application/json @@ -174,14 +174,14 @@ interactions: duration: "" - request: body: | - {"message":"some message Notify: @hipchat-channel","name":"%s","options":{"escalation_message":"the situation has escalated @pagerduty","include_tags":true,"new_host_delay":300,"no_data_timeframe":10,"notify_no_data":false,"require_full_window":true,"thresholds":{"critical":2,"warning":1}},"priority":0,"query":"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} \u003e 2","restricted_roles":null,"tags":[],"type":"metric alert"} + {"message":"some message Notify: @hipchat-channel","name":"monitor","options":{"escalation_message":"the situation has escalated @pagerduty","include_tags":true,"new_host_delay":300,"no_data_timeframe":10,"notify_no_data":false,"require_full_window":true,"thresholds":{"critical":2,"warning":1}},"priority":0,"query":"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} \u003e 2","restricted_roles":null,"tags":[],"type":"metric alert"} form: {} headers: Accept: - application/json Content-Type: - application/json - url: https://api.datadoghq.com/api/v1/monitor/133776239/validate + url: https://api.datadoghq.com/api/v1/monitor/133780693/validate method: POST response: body: | @@ -198,11 +198,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/f37f3e0e-7422-11ee-a8b4-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/8463dd36-742c-11ee-b7f5-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"f37f3e0e-7422-11ee-a8b4-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698340393","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698340393","type":"group","widgets":[{"definition":{"alert_id":"133776239","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"},"id":1578017363072818}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"8463dd36-742c-11ee-b7f5-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackAlertGraph-local-1698344501","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackAlertGraph-local-1698344501","type":"group","widgets":[{"definition":{"alert_id":"133780693","title":"Widget Title","title_align":"center","title_size":"20","type":"alert_graph","viz_type":"timeseries"},"id":139029612912591}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -211,14 +211,14 @@ interactions: duration: "" - request: body: | - {"message":"some message Notify: @hipchat-channel","name":"%s","options":{"escalation_message":"the situation has escalated @pagerduty","include_tags":true,"new_host_delay":300,"no_data_timeframe":10,"notify_no_data":false,"require_full_window":true,"thresholds":{"critical":2,"warning":1}},"priority":0,"query":"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} \u003e 2","restricted_roles":null,"tags":[],"type":"metric alert"} + {"message":"some message Notify: @hipchat-channel","name":"monitor","options":{"escalation_message":"the situation has escalated @pagerduty","include_tags":true,"new_host_delay":300,"no_data_timeframe":10,"notify_no_data":false,"require_full_window":true,"thresholds":{"critical":2,"warning":1}},"priority":0,"query":"avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} \u003e 2","restricted_roles":null,"tags":[],"type":"metric alert"} form: {} headers: Accept: - application/json Content-Type: - application/json - url: https://api.datadoghq.com/api/v1/monitor/133776239/validate + url: https://api.datadoghq.com/api/v1/monitor/133780693/validate method: POST response: body: | @@ -235,7 +235,7 @@ interactions: headers: Accept: - '*/*' - url: https://api.datadoghq.com/api/v2/powerpacks/f37f3e0e-7422-11ee-a8b4-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/8463dd36-742c-11ee-b7f5-da7ad0900002 method: DELETE response: body: "" @@ -251,11 +251,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v1/monitor/133776239 + url: https://api.datadoghq.com/api/v1/monitor/133780693 method: DELETE response: body: | - {"deleted_monitor_id":133776239} + {"deleted_monitor_id":133780693} headers: Content-Type: - application/json @@ -268,10 +268,10 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/f37f3e0e-7422-11ee-a8b4-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/8463dd36-742c-11ee-b7f5-da7ad0900002 method: GET response: - body: '{"errors":["Powerpack with ID f37f3e0e-7422-11ee-a8b4-da7ad0900002 not found"]}' + body: '{"errors":["Powerpack with ID 8463dd36-742c-11ee-b7f5-da7ad0900002 not found"]}' headers: Content-Type: - application/json diff --git a/datadog/tests/resource_datadog_powerpack_alert_graph_test.go b/datadog/tests/resource_datadog_powerpack_alert_graph_test.go index 09f2e0eef6..d509ec6f8c 100644 --- a/datadog/tests/resource_datadog_powerpack_alert_graph_test.go +++ b/datadog/tests/resource_datadog_powerpack_alert_graph_test.go @@ -6,7 +6,7 @@ import ( const datadogPowerpackAlertGraphTest = ` resource "datadog_monitor" "downtime_monitor" { - name = "%s" + name = "monitor" type = "metric alert" message = "some message Notify: @hipchat-channel" escalation_message = "the situation has escalated @pagerduty" @@ -41,6 +41,7 @@ resource "datadog_powerpack" "alert_graph_powerpack" { var datadogPowerpackAlertGraphTestAsserts = []string{ // Powerpack metadata + "name = {{uniq}}", "description = Created using the Datadog provider in Terraform", "widget.# = 1", "tags.# = 1", From 718758077c8528ca346d1172c74c12300bb7158b Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Thu, 26 Oct 2023 17:48:36 -0400 Subject: [PATCH 24/48] support for distribution + tests --- datadog/resource_datadog_powerpack.go | 27 ++++++ datadog/tests/provider_test.go | 1 + ...rce_datadog_powerpack_distribution_test.go | 87 +++++++++++++++++++ 3 files changed, 115 insertions(+) create mode 100644 datadog/tests/resource_datadog_powerpack_distribution_test.go diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index 015e3f1b84..a9ffb6a774 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -362,6 +362,25 @@ func dashboardWidgetsToPpkWidgets(terraformWidgets *[]map[string]interface{}) ([ // Distribution/change/heatmap widgets have a "requests" field, while API Spec has a "request" field // Here we set the "requests" field and remove "request" widgetDefRequests := *widgetDef["request"].(*[]map[string]interface{}) + for i, widgetDefRequest := range widgetDefRequests { + if widgetDefRequest["style"] != nil { + // TF generates a style list, whereas API expects a single element + widgetDefRequest["style"] = widgetDefRequest["style"].([]map[string]interface{})[0] + } + if widgetDefRequest["apm_stats_query"] != nil { + // TF generates an apm_stats_query list, whereas API expects a single element + widgetDefRequest["apm_stats_query"] = widgetDefRequest["apm_stats_query"].([]map[string]interface{})[0] + } + if widgetDefRequest["x"] != nil { + // TF generates a style list, whereas API expects a single element + widgetDefRequest["x"] = widgetDefRequest["x"].([]map[string]interface{})[0] + } + if widgetDefRequest["y"] != nil { + // TF generates a style list, whereas API expects a single element + widgetDefRequest["y"] = widgetDefRequest["y"].([]map[string]interface{})[0] + } + widgetDefRequests[i] = widgetDefRequest + } widgetDef["requests"] = widgetDefRequests delete(widgetDef, "request") } @@ -410,6 +429,12 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) if widgetDefRequestNormalized["limit"] != nil { widgetDefRequestNormalized["limit"] = int(widgetDefRequestNormalized["limit"].(float64)) } + if widgetDefRequestNormalized["style"] != nil { + widgetDefRequestNormalized["style"] = []interface{}{widgetDefRequestNormalized["style"]} + } + if widgetDefRequestNormalized["apm_stats_query"] != nil { + widgetDefRequestNormalized["apm_stats_query"] = []interface{}{widgetDefRequestNormalized["apm_stats_query"]} + } widgetDefRequests[i] = widgetDefRequestNormalized } terraformWidget.Definition["request"] = widgetDefRequests @@ -436,6 +461,8 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) definition = datadogV1.ChangeWidgetDefinitionAsWidgetDefinition(buildDatadogChangeDefinition(widgetDefinition)) case "check_status": definition = datadogV1.CheckStatusWidgetDefinitionAsWidgetDefinition(buildDatadogCheckStatusDefinition(widgetDefinition)) + case "distribution": + definition = datadogV1.DistributionWidgetDefinitionAsWidgetDefinition(buildDatadogDistributionDefinition(widgetDefinition)) case "event_stream": definition = datadogV1.EventStreamWidgetDefinitionAsWidgetDefinition(buildDatadogEventStreamDefinition(widgetDefinition)) case "event_timeline": diff --git a/datadog/tests/provider_test.go b/datadog/tests/provider_test.go index 7e69b67563..10feb234e8 100644 --- a/datadog/tests/provider_test.go +++ b/datadog/tests/provider_test.go @@ -138,6 +138,7 @@ var testFiles2EndpointTags = map[string]string{ "tests/resource_datadog_powerpack_alert_value_test": "powerpacks", "tests/resource_datadog_powerpack_change_test": "powerpacks", "tests/resource_datadog_powerpack_check_status_test": "powerpacks", + "tests/resource_datadog_powerpack_distribution_test": "powerpacks", "tests/resource_datadog_powerpack_event_stream_test": "powerpacks", "tests/resource_datadog_powerpack_event_timeline_test": "powerpacks", "tests/resource_datadog_powerpack_iframe_test": "powerpacks", diff --git a/datadog/tests/resource_datadog_powerpack_distribution_test.go b/datadog/tests/resource_datadog_powerpack_distribution_test.go new file mode 100644 index 0000000000..aa8f130256 --- /dev/null +++ b/datadog/tests/resource_datadog_powerpack_distribution_test.go @@ -0,0 +1,87 @@ +package test + +import ( + "testing" +) + +const datadogPowerpackDistributionTest = ` +resource "datadog_powerpack" "distribution_powerpack" { + name = "{{uniq}}" + tags = ["tag:foo1"] + description = "Created using the Datadog provider in Terraform" + template_variables { + defaults = ["defaults"] + name = "datacenter" + } + widget { + distribution_definition { + title = "Avg of system.cpu.user over account:prod by service,account" + title_align = "left" + title_size = "16" + show_legend = "true" + legend_size = "2" + request { + q = "avg:system.cpu.user{account:prod} by {service,account}" + style { + palette = "purple" + } + } + } + } + widget { + distribution_definition { + title = "Avg of system.cpu.user over account:prod by service,account" + title_align = "left" + title_size = "16" + show_legend = "true" + legend_size = "2" + request { + apm_stats_query { + service = "service" + env = "env" + primary_tag = "tag:*" + name = "name" + row_type = "resource" + } + } + } + } +} +` + +var datadogPowerpackDistributionTestAsserts = []string{ + // Powerpack metadata + "name = {{uniq}}", + "description = Created using the Datadog provider in Terraform", + "widget.# = 2", + "tags.# = 1", + "tags.0 = tag:foo1", + // Distribution widget + "widget.0.distribution_definition.0.title = Avg of system.cpu.user over account:prod by service,account", + "widget.0.distribution_definition.0.title_size = 16", + "widget.0.distribution_definition.0.title_align = left", + "widget.0.distribution_definition.0.show_legend = true", + "widget.0.distribution_definition.0.legend_size = 2", + "widget.0.distribution_definition.0.request.0.q = avg:system.cpu.user{account:prod} by {service,account}", + "widget.0.distribution_definition.0.request.0.style.0.palette = purple", + "widget.1.distribution_definition.0.title = Avg of system.cpu.user over account:prod by service,account", + "widget.1.distribution_definition.0.title_size = 16", + "widget.1.distribution_definition.0.title_align = left", + "widget.1.distribution_definition.0.show_legend = true", + "widget.1.distribution_definition.0.legend_size = 2", + "widget.1.distribution_definition.0.request.0.apm_stats_query.0.service = service", + "widget.1.distribution_definition.0.request.0.apm_stats_query.0.env = env", + "widget.1.distribution_definition.0.request.0.apm_stats_query.0.primary_tag = tag:*", + "widget.1.distribution_definition.0.request.0.apm_stats_query.0.name = name", + "widget.1.distribution_definition.0.request.0.apm_stats_query.0.row_type = resource", + + // Template Variables + "template_variables.# = 1", + "template_variables.0.name = datacenter", + "template_variables.0.defaults.# = 1", + "template_variables.0.defaults.0 = defaults", +} + +func TestAccDatadogPowerpackDistribution(t *testing.T) { + testAccDatadogPowerpackWidgetUtil(t, datadogPowerpackDistributionTest, "datadog_powerpack.distribution_powerpack", datadogPowerpackDistributionTestAsserts) +} From aaf6f63f77e497e6ce257c99d8a2405df9e42eea Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Fri, 27 Oct 2023 16:14:20 -0400 Subject: [PATCH 25/48] support for hostmap --- datadog/resource_datadog_powerpack.go | 103 +++++++++++------ ...TestAccDatadogPowerpackDistribution.freeze | 1 + .../TestAccDatadogPowerpackDistribution.yaml | 106 ++++++++++++++++++ .../TestAccDatadogPowerpackHostMap.freeze | 1 + .../TestAccDatadogPowerpackHostMap.yaml | 106 ++++++++++++++++++ datadog/tests/provider_test.go | 1 + ...resource_datadog_powerpack_hostmap_test.go | 92 +++++++++++++++ 7 files changed, 377 insertions(+), 33 deletions(-) create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackDistribution.freeze create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackDistribution.yaml create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackHostMap.freeze create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackHostMap.yaml create mode 100644 datadog/tests/resource_datadog_powerpack_hostmap_test.go diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index a9ffb6a774..254f5b335a 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -323,6 +323,30 @@ func buildDatadogPowerpack(ctx context.Context, d *schema.ResourceData) (*datado } +func normalizeWidgetDefRequests(widgetDefRequests []map[string]interface{}) []map[string]interface{} { + normalizedWidgetDefRequests := widgetDefRequests + for i, widgetDefRequest := range normalizedWidgetDefRequests { + if widgetDefRequest["style"] != nil { + // TF generates a style list, whereas API expects a single element + widgetDefRequest["style"] = widgetDefRequest["style"].([]map[string]interface{})[0] + } + if widgetDefRequest["apm_stats_query"] != nil { + // TF generates an apm_stats_query list, whereas API expects a single element + widgetDefRequest["apm_stats_query"] = widgetDefRequest["apm_stats_query"].([]map[string]interface{})[0] + } + if widgetDefRequest["x"] != nil { + // TF generates a style list, whereas API expects a single element + widgetDefRequest["x"] = widgetDefRequest["x"].([]map[string]interface{})[0] + } + if widgetDefRequest["y"] != nil { + // TF generates a style list, whereas API expects a single element + widgetDefRequest["y"] = widgetDefRequest["y"].([]map[string]interface{})[0] + } + normalizedWidgetDefRequests[i] = widgetDefRequest + } + return normalizedWidgetDefRequests +} + func dashboardWidgetsToPpkWidgets(terraformWidgets *[]map[string]interface{}) ([]datadogV2.PowerpackInnerWidgets, diag.Diagnostics) { var diags diag.Diagnostics @@ -348,6 +372,10 @@ func dashboardWidgetsToPpkWidgets(terraformWidgets *[]map[string]interface{}) ([ widgetLayout = datadogV2.NewPowerpackInnerWidgetLayout(height, width, x, y) } else { widgetDef = terraformDefinition.([]map[string]interface{})[0] + // The type in the dictionary is in the format _definition, where can contain + // a type with multiple underscores. To parse a valid type name, we take a substring up until the last + // underscore. Ex: free_text_definition -> free_text, hostmap_definition -> hostmap + widgetDef["type"] = widgetType[:strings.LastIndex(widgetType, "_")] // Dashboard widgets set live span at the widget level, we must prevent that for powerpack widgets // where live span is set at the resource level. if widgetDef["live_span"] != nil { @@ -361,29 +389,25 @@ func dashboardWidgetsToPpkWidgets(terraformWidgets *[]map[string]interface{}) ([ if widgetDef["request"] != nil { // Distribution/change/heatmap widgets have a "requests" field, while API Spec has a "request" field // Here we set the "requests" field and remove "request" - widgetDefRequests := *widgetDef["request"].(*[]map[string]interface{}) - for i, widgetDefRequest := range widgetDefRequests { - if widgetDefRequest["style"] != nil { - // TF generates a style list, whereas API expects a single element - widgetDefRequest["style"] = widgetDefRequest["style"].([]map[string]interface{})[0] - } - if widgetDefRequest["apm_stats_query"] != nil { - // TF generates an apm_stats_query list, whereas API expects a single element - widgetDefRequest["apm_stats_query"] = widgetDefRequest["apm_stats_query"].([]map[string]interface{})[0] + if widgetDef["type"] == "scatterplot" || widgetDef["type"] == "hostmap" { + // Because of course JUST one widget type expects requests to be a single value instead of a list + widgetDefRequest := widgetDef["request"].([]map[string]interface{})[0] + if widgetDefRequest["fill"] != nil { + widgetDefRequest["fill"] = widgetDefRequest["fill"].([]map[string]interface{})[0] } - if widgetDefRequest["x"] != nil { - // TF generates a style list, whereas API expects a single element - widgetDefRequest["x"] = widgetDefRequest["x"].([]map[string]interface{})[0] + if widgetDefRequest["size"] != nil { + widgetDefRequest["size"] = widgetDefRequest["size"].([]map[string]interface{})[0] } - if widgetDefRequest["y"] != nil { - // TF generates a style list, whereas API expects a single element - widgetDefRequest["y"] = widgetDefRequest["y"].([]map[string]interface{})[0] - } - widgetDefRequests[i] = widgetDefRequest + widgetDef["requests"] = widgetDefRequest + } else { + widgetDefRequests := *widgetDef["request"].(*[]map[string]interface{}) + widgetDef["requests"] = normalizeWidgetDefRequests(widgetDefRequests) } - widgetDef["requests"] = widgetDefRequests delete(widgetDef, "request") } + if widgetDef["style"] != nil { + widgetDef["style"] = widgetDef["style"].([]map[string]interface{})[0] + } if widgetDef["custom_link"] != nil { // Some widgets have a "custom_links" field, while API Spec has a "custom_link" field // Here we set the "custom_links" field and remove "custom_link" @@ -391,10 +415,6 @@ func dashboardWidgetsToPpkWidgets(terraformWidgets *[]map[string]interface{}) ([ widgetDef["custom_links"] = widgetDefCustomLinks delete(widgetDef, "custom_link") } - // The type in the dictionary is in the format _definition, where can contain - // a type with multiple underscores. To parse a valid type name, we take a substring up until the last - // underscore. Ex: free_text_definition -> free_text, hostmap_definition -> hostmap - widgetDef["type"] = widgetType[:strings.LastIndex(widgetType, "_")] } } widgetsDDItem := datadogV2.NewPowerpackInnerWidgets(widgetDef) @@ -423,21 +443,33 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) // Dashboard TF widgets have a "requests" field, while API Spec has a "request" field // Here we set the "request" field and remove "requests" if widgetDefinition["requests"] != nil { - widgetDefRequests := widgetDefinition["requests"].([]interface{}) - for i, widgetDefRequest := range widgetDefRequests { - widgetDefRequestNormalized := widgetDefRequest.(map[string]interface{}) - if widgetDefRequestNormalized["limit"] != nil { - widgetDefRequestNormalized["limit"] = int(widgetDefRequestNormalized["limit"].(float64)) + if widgetDefinition["type"] == "scatterplot" || widgetDefinition["type"] == "hostmap" { + // Because of course JUST one widget type expects requests to be a single value instead of a list + widgetDefRequest := widgetDefinition["requests"].(map[string]interface{}) + if widgetDefRequest["fill"] != nil { + widgetDefRequest["fill"] = []interface{}{widgetDefRequest["fill"].(interface{})} } - if widgetDefRequestNormalized["style"] != nil { - widgetDefRequestNormalized["style"] = []interface{}{widgetDefRequestNormalized["style"]} + if widgetDefRequest["size"] != nil { + widgetDefRequest["size"] = []interface{}{widgetDefRequest["size"].(interface{})} } - if widgetDefRequestNormalized["apm_stats_query"] != nil { - widgetDefRequestNormalized["apm_stats_query"] = []interface{}{widgetDefRequestNormalized["apm_stats_query"]} + terraformWidget.Definition["request"] = []interface{}{widgetDefRequest} + } else { + widgetDefRequests := widgetDefinition["requests"].([]interface{}) + for i, widgetDefRequest := range widgetDefRequests { + widgetDefRequestNormalized := widgetDefRequest.(map[string]interface{}) + if widgetDefRequestNormalized["limit"] != nil { + widgetDefRequestNormalized["limit"] = int(widgetDefRequestNormalized["limit"].(float64)) + } + if widgetDefRequestNormalized["style"] != nil { + widgetDefRequestNormalized["style"] = []interface{}{widgetDefRequestNormalized["style"]} + } + if widgetDefRequestNormalized["apm_stats_query"] != nil { + widgetDefRequestNormalized["apm_stats_query"] = []interface{}{widgetDefRequestNormalized["apm_stats_query"]} + } + widgetDefRequests[i] = widgetDefRequestNormalized } - widgetDefRequests[i] = widgetDefRequestNormalized + terraformWidget.Definition["request"] = widgetDefRequests } - terraformWidget.Definition["request"] = widgetDefRequests delete(terraformWidget.Definition, "requests") } // Dashboard TF widgets have a "custom_links" field, while API Spec has a "custom_link" field @@ -447,6 +479,9 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) terraformWidget.Definition["custom_link"] = widgetDefCustomLinks delete(terraformWidget.Definition, "custom_links") } + if widgetDefinition["style"] != nil { + widgetDefinition["style"] = []interface{}{widgetDefinition["style"].(map[string]interface{})} + } // TF -> json conversion processes precision as float64, it needs to be converted to // an int value to be saved successfully if widgetDefinition["precision"] != nil { @@ -469,6 +504,8 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) definition = datadogV1.EventTimelineWidgetDefinitionAsWidgetDefinition(buildDatadogEventTimelineDefinition(widgetDefinition)) case "free_text": definition = datadogV1.FreeTextWidgetDefinitionAsWidgetDefinition(buildDatadogFreeTextDefinition(widgetDefinition)) + case "hostmap": + definition = datadogV1.HostMapWidgetDefinitionAsWidgetDefinition(buildDatadogHostmapDefinition(widgetDefinition)) case "iframe": definition = datadogV1.IFrameWidgetDefinitionAsWidgetDefinition(buildDatadogIframeDefinition(widgetDefinition)) case "image": diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackDistribution.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackDistribution.freeze new file mode 100644 index 0000000000..0171aa99c4 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackDistribution.freeze @@ -0,0 +1 @@ +2023-10-27T16:10:43.243857-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackDistribution.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackDistribution.yaml new file mode 100644 index 0000000000..6824774fb1 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackDistribution.yaml @@ -0,0 +1,106 @@ +--- +version: 1 +interactions: +- request: + body: | + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackDistribution-local-1698356868","type":"group","widgets":[{"definition":{"legend_size":"2","requests":[{"q":"avg:system.cpu.user{account:prod} by {service,account}","style":{"palette":"purple"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by service,account","title_align":"left","title_size":"16","type":"distribution"}},{"definition":{"legend_size":"2","requests":[{"apm_stats_query":{"env":"env","name":"name","primary_tag":"tag:*","row_type":"resource","service":"service"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by service,account","title_align":"left","title_size":"16","type":"distribution"}}]}},"name":"tf-TestAccDatadogPowerpackDistribution-local-1698356868","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks + method: POST + response: + body: | + {"data":{"type":"powerpack","id":"4fcf19a6-7449-11ee-b2cd-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackDistribution-local-1698356868","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackDistribution-local-1698356868","type":"group","widgets":[{"definition":{"legend_size":"2","requests":[{"q":"avg:system.cpu.user{account:prod} by {service,account}","style":{"palette":"purple"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by service,account","title_align":"left","title_size":"16","type":"distribution"},"id":8705220437504606},{"definition":{"legend_size":"2","requests":[{"apm_stats_query":{"env":"env","name":"name","primary_tag":"tag:*","row_type":"resource","service":"service"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by service,account","title_align":"left","title_size":"16","type":"distribution"},"id":4558678287603081}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/4fcf19a6-7449-11ee-b2cd-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"4fcf19a6-7449-11ee-b2cd-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackDistribution-local-1698356868","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackDistribution-local-1698356868","type":"group","widgets":[{"definition":{"legend_size":"2","requests":[{"q":"avg:system.cpu.user{account:prod} by {service,account}","style":{"palette":"purple"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by service,account","title_align":"left","title_size":"16","type":"distribution"},"id":8705220437504606},{"definition":{"legend_size":"2","requests":[{"apm_stats_query":{"env":"env","name":"name","primary_tag":"tag:*","row_type":"resource","service":"service"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by service,account","title_align":"left","title_size":"16","type":"distribution"},"id":4558678287603081}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/4fcf19a6-7449-11ee-b2cd-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"4fcf19a6-7449-11ee-b2cd-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackDistribution-local-1698356868","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackDistribution-local-1698356868","type":"group","widgets":[{"definition":{"legend_size":"2","requests":[{"q":"avg:system.cpu.user{account:prod} by {service,account}","style":{"palette":"purple"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by service,account","title_align":"left","title_size":"16","type":"distribution"},"id":8705220437504606},{"definition":{"legend_size":"2","requests":[{"apm_stats_query":{"env":"env","name":"name","primary_tag":"tag:*","row_type":"resource","service":"service"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by service,account","title_align":"left","title_size":"16","type":"distribution"},"id":4558678287603081}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/4fcf19a6-7449-11ee-b2cd-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"4fcf19a6-7449-11ee-b2cd-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackDistribution-local-1698356868","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackDistribution-local-1698356868","type":"group","widgets":[{"definition":{"legend_size":"2","requests":[{"q":"avg:system.cpu.user{account:prod} by {service,account}","style":{"palette":"purple"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by service,account","title_align":"left","title_size":"16","type":"distribution"},"id":8705220437504606},{"definition":{"legend_size":"2","requests":[{"apm_stats_query":{"env":"env","name":"name","primary_tag":"tag:*","row_type":"resource","service":"service"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by service,account","title_align":"left","title_size":"16","type":"distribution"},"id":4558678287603081}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - '*/*' + url: https://api.datadoghq.com/api/v2/powerpacks/4fcf19a6-7449-11ee-b2cd-da7ad0900002 + method: DELETE + response: + body: "" + headers: + Content-Type: + - text/html; charset=utf-8 + status: 204 No Content + code: 204 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/4fcf19a6-7449-11ee-b2cd-da7ad0900002 + method: GET + response: + body: '{"errors":["Powerpack with ID 4fcf19a6-7449-11ee-b2cd-da7ad0900002 not found"]}' + headers: + Content-Type: + - application/json + status: 404 Not Found + code: 404 + duration: "" diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackHostMap.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackHostMap.freeze new file mode 100644 index 0000000000..9d521a5584 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackHostMap.freeze @@ -0,0 +1 @@ +2023-10-27T16:10:47.224034-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackHostMap.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackHostMap.yaml new file mode 100644 index 0000000000..ac08663923 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackHostMap.yaml @@ -0,0 +1,106 @@ +--- +version: 1 +interactions: +- request: + body: | + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackHostMap-local-1698437447","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"group":["region"],"no_group_hosts":true,"no_metric_hosts":true,"node_type":"host","requests":{"fill":{"q":"avg:system.cpu.idle{env:prod} by {host}"},"size":{"q":"max:system.cpu.user{env:prod} by {host}"}},"scope":["env:prod"],"style":{"fill_max":"30","fill_min":"10","palette":"YlOrRd","palette_flip":true},"title":"system.cpu.idle, system.cpu.user","title_align":"right","title_size":"16","type":"hostmap"}}]}},"name":"tf-TestAccDatadogPowerpackHostMap-local-1698437447","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks + method: POST + response: + body: | + {"data":{"type":"powerpack","id":"ecba490a-7504-11ee-bb1c-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackHostMap-local-1698437447","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackHostMap-local-1698437447","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"group":["region"],"no_group_hosts":true,"no_metric_hosts":true,"node_type":"host","requests":{"fill":{"q":"avg:system.cpu.idle{env:prod} by {host}"},"size":{"q":"max:system.cpu.user{env:prod} by {host}"}},"scope":["env:prod"],"style":{"fill_max":"30","fill_min":"10","palette":"YlOrRd","palette_flip":true},"title":"system.cpu.idle, system.cpu.user","title_align":"right","title_size":"16","type":"hostmap"},"id":6381176237857280}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/ecba490a-7504-11ee-bb1c-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"ecba490a-7504-11ee-bb1c-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackHostMap-local-1698437447","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackHostMap-local-1698437447","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"group":["region"],"no_group_hosts":true,"no_metric_hosts":true,"node_type":"host","requests":{"fill":{"q":"avg:system.cpu.idle{env:prod} by {host}"},"size":{"q":"max:system.cpu.user{env:prod} by {host}"}},"scope":["env:prod"],"style":{"fill_max":"30","fill_min":"10","palette":"YlOrRd","palette_flip":true},"title":"system.cpu.idle, system.cpu.user","title_align":"right","title_size":"16","type":"hostmap"},"id":6381176237857280}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/ecba490a-7504-11ee-bb1c-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"ecba490a-7504-11ee-bb1c-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackHostMap-local-1698437447","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackHostMap-local-1698437447","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"group":["region"],"no_group_hosts":true,"no_metric_hosts":true,"node_type":"host","requests":{"fill":{"q":"avg:system.cpu.idle{env:prod} by {host}"},"size":{"q":"max:system.cpu.user{env:prod} by {host}"}},"scope":["env:prod"],"style":{"fill_max":"30","fill_min":"10","palette":"YlOrRd","palette_flip":true},"title":"system.cpu.idle, system.cpu.user","title_align":"right","title_size":"16","type":"hostmap"},"id":6381176237857280}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/ecba490a-7504-11ee-bb1c-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"ecba490a-7504-11ee-bb1c-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackHostMap-local-1698437447","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackHostMap-local-1698437447","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"group":["region"],"no_group_hosts":true,"no_metric_hosts":true,"node_type":"host","requests":{"fill":{"q":"avg:system.cpu.idle{env:prod} by {host}"},"size":{"q":"max:system.cpu.user{env:prod} by {host}"}},"scope":["env:prod"],"style":{"fill_max":"30","fill_min":"10","palette":"YlOrRd","palette_flip":true},"title":"system.cpu.idle, system.cpu.user","title_align":"right","title_size":"16","type":"hostmap"},"id":6381176237857280}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - '*/*' + url: https://api.datadoghq.com/api/v2/powerpacks/ecba490a-7504-11ee-bb1c-da7ad0900002 + method: DELETE + response: + body: "" + headers: + Content-Type: + - text/html; charset=utf-8 + status: 204 No Content + code: 204 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/ecba490a-7504-11ee-bb1c-da7ad0900002 + method: GET + response: + body: '{"errors":["Powerpack with ID ecba490a-7504-11ee-bb1c-da7ad0900002 not found"]}' + headers: + Content-Type: + - application/json + status: 404 Not Found + code: 404 + duration: "" diff --git a/datadog/tests/provider_test.go b/datadog/tests/provider_test.go index 10feb234e8..d79da3d26e 100644 --- a/datadog/tests/provider_test.go +++ b/datadog/tests/provider_test.go @@ -144,6 +144,7 @@ var testFiles2EndpointTags = map[string]string{ "tests/resource_datadog_powerpack_iframe_test": "powerpacks", "tests/resource_datadog_powerpack_image_test": "powerpacks", "tests/resource_datadog_powerpack_free_text_test": "powerpacks", + "tests/resource_datadog_powerpack_hostmap_test": "powerpacks", "tests/resource_datadog_powerpack_manage_status_test": "powerpacks", "tests/resource_datadog_powerpack_note_test": "powerpacks", "tests/resource_datadog_powerpack_query_value_test": "powerpacks", diff --git a/datadog/tests/resource_datadog_powerpack_hostmap_test.go b/datadog/tests/resource_datadog_powerpack_hostmap_test.go new file mode 100644 index 0000000000..91998fed99 --- /dev/null +++ b/datadog/tests/resource_datadog_powerpack_hostmap_test.go @@ -0,0 +1,92 @@ +package test + +import ( + "testing" +) + +const datadogPowerpackHostMapTest = ` +resource "datadog_powerpack" "hostmap_powerpack" { + name = "{{uniq}}" + tags = ["tag:foo1"] + description = "Created using the Datadog provider in Terraform" + template_variables { + defaults = ["defaults"] + name = "datacenter" + } + widget { + hostmap_definition { + style { + fill_min = "10" + fill_max = "30" + palette = "YlOrRd" + palette_flip = true + } + node_type = "host" + no_metric_hosts = "true" + group = ["region"] + request { + size { + q = "max:system.cpu.user{env:prod} by {host}" + } + fill { + q = "avg:system.cpu.idle{env:prod} by {host}" + } + } + no_group_hosts = "true" + scope = ["env:prod"] + title = "system.cpu.idle, system.cpu.user" + title_align = "right" + title_size = "16" + custom_link { + link = "https://app.datadoghq.com/dashboard/lists" + label = "Test Custom Link label" + } + custom_link { + link = "https://app.datadoghq.com/dashboard/lists" + is_hidden = true + override_label = "logs" + } + } + } +} +` + +var datadogPowerpackHostMapTestAsserts = []string{ + // Powerpack metadata + "name = {{uniq}}", + "description = Created using the Datadog provider in Terraform", + "widget.# = 1", + "tags.# = 1", + "tags.0 = tag:foo1", + // Hostmap widget + "widget.0.hostmap_definition.0.style.0.palette_flip = true", + "widget.0.hostmap_definition.0.request.0.fill.0.q = avg:system.cpu.idle{env:prod} by {host}", + "widget.0.hostmap_definition.0.title = system.cpu.idle, system.cpu.user", + "widget.0.hostmap_definition.0.node_type = host", + "widget.0.hostmap_definition.0.title_align = right", + "widget.0.hostmap_definition.0.no_metric_hosts = true", + "widget.0.hostmap_definition.0.style.0.palette = YlOrRd", + "widget.0.hostmap_definition.0.scope.0 = env:prod", + "widget.0.hostmap_definition.0.title_size = 16", + "widget.0.hostmap_definition.0.style.0.fill_max = 30", + "widget.0.hostmap_definition.0.style.0.fill_min = 10", + "widget.0.hostmap_definition.0.no_group_hosts = true", + "widget.0.hostmap_definition.0.request.0.size.0.q = max:system.cpu.user{env:prod} by {host}", + "widget.0.hostmap_definition.0.group.0 = region", + "widget.0.hostmap_definition.0.custom_link.# = 2", + "widget.0.hostmap_definition.0.custom_link.0.label = Test Custom Link label", + "widget.0.hostmap_definition.0.custom_link.0.link = https://app.datadoghq.com/dashboard/lists", + "widget.0.hostmap_definition.0.custom_link.1.override_label = logs", + "widget.0.hostmap_definition.0.custom_link.1.link = https://app.datadoghq.com/dashboard/lists", + "widget.0.hostmap_definition.0.custom_link.1.is_hidden = true", + + // Template Variables + "template_variables.# = 1", + "template_variables.0.name = datacenter", + "template_variables.0.defaults.# = 1", + "template_variables.0.defaults.0 = defaults", +} + +func TestAccDatadogPowerpackHostMap(t *testing.T) { + testAccDatadogPowerpackWidgetUtil(t, datadogPowerpackHostMapTest, "datadog_powerpack.hostmap_powerpack", datadogPowerpackHostMapTestAsserts) +} From a87233cb6545d8ea2997e5c7ac97e57823991813 Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Fri, 27 Oct 2023 16:56:15 -0400 Subject: [PATCH 26/48] support for topology map and scatterplot --- datadog/resource_datadog_powerpack.go | 28 +++++ .../TestAccDatadogPowerpackScatterplot.freeze | 1 + .../TestAccDatadogPowerpackScatterplot.yaml | 106 ++++++++++++++++++ .../TestAccDatadogPowerpackTopologyMap.freeze | 1 + .../TestAccDatadogPowerpackTopologyMap.yaml | 106 ++++++++++++++++++ datadog/tests/provider_test.go | 2 + ...urce_datadog_powerpack_scatterplot_test.go | 100 +++++++++++++++++ ...rce_datadog_powerpack_topology_map_test.go | 87 ++++++++++++++ 8 files changed, 431 insertions(+) create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackScatterplot.freeze create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackScatterplot.yaml create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackTopologyMap.freeze create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackTopologyMap.yaml create mode 100644 datadog/tests/resource_datadog_powerpack_scatterplot_test.go create mode 100644 datadog/tests/resource_datadog_powerpack_topology_map_test.go diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index 254f5b335a..0fd0e26b86 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -398,6 +398,12 @@ func dashboardWidgetsToPpkWidgets(terraformWidgets *[]map[string]interface{}) ([ if widgetDefRequest["size"] != nil { widgetDefRequest["size"] = widgetDefRequest["size"].([]map[string]interface{})[0] } + if widgetDefRequest["x"] != nil { + widgetDefRequest["x"] = widgetDefRequest["x"].([]map[string]interface{})[0] + } + if widgetDefRequest["y"] != nil { + widgetDefRequest["y"] = widgetDefRequest["y"].([]map[string]interface{})[0] + } widgetDef["requests"] = widgetDefRequest } else { widgetDefRequests := *widgetDef["request"].(*[]map[string]interface{}) @@ -408,6 +414,12 @@ func dashboardWidgetsToPpkWidgets(terraformWidgets *[]map[string]interface{}) ([ if widgetDef["style"] != nil { widgetDef["style"] = widgetDef["style"].([]map[string]interface{})[0] } + if widgetDef["xaxis"] != nil { + widgetDef["xaxis"] = widgetDef["xaxis"].([]map[string]interface{})[0] + } + if widgetDef["yaxis"] != nil { + widgetDef["yaxis"] = widgetDef["yaxis"].([]map[string]interface{})[0] + } if widgetDef["custom_link"] != nil { // Some widgets have a "custom_links" field, while API Spec has a "custom_link" field // Here we set the "custom_links" field and remove "custom_link" @@ -452,6 +464,12 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) if widgetDefRequest["size"] != nil { widgetDefRequest["size"] = []interface{}{widgetDefRequest["size"].(interface{})} } + if widgetDefRequest["x"] != nil { + widgetDefRequest["x"] = []interface{}{widgetDefRequest["x"].(interface{})} + } + if widgetDefRequest["y"] != nil { + widgetDefRequest["y"] = []interface{}{widgetDefRequest["y"].(interface{})} + } terraformWidget.Definition["request"] = []interface{}{widgetDefRequest} } else { widgetDefRequests := widgetDefinition["requests"].([]interface{}) @@ -482,6 +500,12 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) if widgetDefinition["style"] != nil { widgetDefinition["style"] = []interface{}{widgetDefinition["style"].(map[string]interface{})} } + if widgetDefinition["xaxis"] != nil { + widgetDefinition["xaxis"] = []interface{}{widgetDefinition["xaxis"].(map[string]interface{})} + } + if widgetDefinition["yaxis"] != nil { + widgetDefinition["yaxis"] = []interface{}{widgetDefinition["yaxis"].(map[string]interface{})} + } // TF -> json conversion processes precision as float64, it needs to be converted to // an int value to be saved successfully if widgetDefinition["precision"] != nil { @@ -516,6 +540,8 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) definition = datadogV1.NoteWidgetDefinitionAsWidgetDefinition(buildDatadogNoteDefinition(widgetDefinition)) case "query_value": definition = datadogV1.QueryValueWidgetDefinitionAsWidgetDefinition(buildDatadogQueryValueDefinition(widgetDefinition)) + case "scatterplot": + definition = datadogV1.ScatterPlotWidgetDefinitionAsWidgetDefinition(buildDatadogScatterplotDefinition(widgetDefinition)) case "servicemap": definition = datadogV1.ServiceMapWidgetDefinitionAsWidgetDefinition(buildDatadogServiceMapDefinition(widgetDefinition)) case "group": @@ -532,6 +558,8 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) continue case "toplist": definition = datadogV1.ToplistWidgetDefinitionAsWidgetDefinition(buildDatadogToplistDefinition(widgetDefinition)) + case "topology_map": + definition = datadogV1.TopologyMapWidgetDefinitionAsWidgetDefinition(buildDatadogTopologyMapDefinition(widgetDefinition)) case "trace_service": definition = datadogV1.ServiceSummaryWidgetDefinitionAsWidgetDefinition(buildDatadogTraceServiceDefinition(widgetDefinition)) default: diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackScatterplot.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackScatterplot.freeze new file mode 100644 index 0000000000..84d0368c11 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackScatterplot.freeze @@ -0,0 +1 @@ +2023-10-27T16:54:31.417556-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackScatterplot.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackScatterplot.yaml new file mode 100644 index 0000000000..c780701ce2 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackScatterplot.yaml @@ -0,0 +1,106 @@ +--- +version: 1 +interactions: +- request: + body: | + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackScatterplot-local-1698440071","type":"group","widgets":[{"definition":{"color_by_groups":["app"],"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"requests":{"x":{"aggregator":"avg","q":"avg:system.cpu.user{account:prod} by {service, team, app}"},"y":{"aggregator":"avg","q":"avg:system.mem.used{env:prod} by {service, team, app}"}},"title":"system.mem.used and system.cpu.user by service,team,app colored by app","title_align":"right","title_size":"16","type":"scatterplot","xaxis":{"include_zero":false,"label":"cpu (%)","max":"100","min":"0","scale":"log"},"yaxis":{"include_zero":false,"label":"mem (Gib)","min":"1","scale":"log"}}}]}},"name":"tf-TestAccDatadogPowerpackScatterplot-local-1698440071","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks + method: POST + response: + body: | + {"data":{"type":"powerpack","id":"0803813a-750b-11ee-80ed-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackScatterplot-local-1698440071","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackScatterplot-local-1698440071","type":"group","widgets":[{"definition":{"color_by_groups":["app"],"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"requests":{"x":{"aggregator":"avg","q":"avg:system.cpu.user{account:prod} by {service, team, app}"},"y":{"aggregator":"avg","q":"avg:system.mem.used{env:prod} by {service, team, app}"}},"title":"system.mem.used and system.cpu.user by service,team,app colored by app","title_align":"right","title_size":"16","type":"scatterplot","xaxis":{"include_zero":false,"label":"cpu (%)","max":"100","min":"0","scale":"log"},"yaxis":{"include_zero":false,"label":"mem (Gib)","min":"1","scale":"log"}},"id":4648756950629827}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/0803813a-750b-11ee-80ed-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"0803813a-750b-11ee-80ed-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackScatterplot-local-1698440071","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackScatterplot-local-1698440071","type":"group","widgets":[{"definition":{"color_by_groups":["app"],"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"requests":{"x":{"aggregator":"avg","q":"avg:system.cpu.user{account:prod} by {service, team, app}"},"y":{"aggregator":"avg","q":"avg:system.mem.used{env:prod} by {service, team, app}"}},"title":"system.mem.used and system.cpu.user by service,team,app colored by app","title_align":"right","title_size":"16","type":"scatterplot","xaxis":{"include_zero":false,"label":"cpu (%)","max":"100","min":"0","scale":"log"},"yaxis":{"include_zero":false,"label":"mem (Gib)","min":"1","scale":"log"}},"id":4648756950629827}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/0803813a-750b-11ee-80ed-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"0803813a-750b-11ee-80ed-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackScatterplot-local-1698440071","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackScatterplot-local-1698440071","type":"group","widgets":[{"definition":{"color_by_groups":["app"],"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"requests":{"x":{"aggregator":"avg","q":"avg:system.cpu.user{account:prod} by {service, team, app}"},"y":{"aggregator":"avg","q":"avg:system.mem.used{env:prod} by {service, team, app}"}},"title":"system.mem.used and system.cpu.user by service,team,app colored by app","title_align":"right","title_size":"16","type":"scatterplot","xaxis":{"include_zero":false,"label":"cpu (%)","max":"100","min":"0","scale":"log"},"yaxis":{"include_zero":false,"label":"mem (Gib)","min":"1","scale":"log"}},"id":4648756950629827}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/0803813a-750b-11ee-80ed-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"0803813a-750b-11ee-80ed-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackScatterplot-local-1698440071","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackScatterplot-local-1698440071","type":"group","widgets":[{"definition":{"color_by_groups":["app"],"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"requests":{"x":{"aggregator":"avg","q":"avg:system.cpu.user{account:prod} by {service, team, app}"},"y":{"aggregator":"avg","q":"avg:system.mem.used{env:prod} by {service, team, app}"}},"title":"system.mem.used and system.cpu.user by service,team,app colored by app","title_align":"right","title_size":"16","type":"scatterplot","xaxis":{"include_zero":false,"label":"cpu (%)","max":"100","min":"0","scale":"log"},"yaxis":{"include_zero":false,"label":"mem (Gib)","min":"1","scale":"log"}},"id":4648756950629827}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - '*/*' + url: https://api.datadoghq.com/api/v2/powerpacks/0803813a-750b-11ee-80ed-da7ad0900002 + method: DELETE + response: + body: "" + headers: + Content-Type: + - text/html; charset=utf-8 + status: 204 No Content + code: 204 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/0803813a-750b-11ee-80ed-da7ad0900002 + method: GET + response: + body: '{"errors":["Powerpack with ID 0803813a-750b-11ee-80ed-da7ad0900002 not found"]}' + headers: + Content-Type: + - application/json + status: 404 Not Found + code: 404 + duration: "" diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackTopologyMap.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackTopologyMap.freeze new file mode 100644 index 0000000000..af62f494d6 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackTopologyMap.freeze @@ -0,0 +1 @@ +2023-10-27T16:54:28.509648-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackTopologyMap.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackTopologyMap.yaml new file mode 100644 index 0000000000..b3253fb9e3 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackTopologyMap.yaml @@ -0,0 +1,106 @@ +--- +version: 1 +interactions: +- request: + body: | + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackTopologyMap-local-1698439033","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"requests":[{"query":[{"data_source":"service_map","filters":["env:prod","datacenter:dc1"],"service":"master-db"}],"request_type":"topology"}],"title":"env: prod, datacenter:dc1, service: master-db","title_align":"left","title_size":"16","type":"topology_map"},"layout":{"height":4,"width":3,"x":5,"y":5}}]}},"name":"tf-TestAccDatadogPowerpackTopologyMap-local-1698439033","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks + method: POST + response: + body: | + {"data":{"type":"powerpack","id":"9d4363b2-7508-11ee-86ac-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackTopologyMap-local-1698439033","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackTopologyMap-local-1698439033","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"requests":[{"query":[{"data_source":"service_map","filters":["env:prod","datacenter:dc1"],"service":"master-db"}],"request_type":"topology"}],"title":"env: prod, datacenter:dc1, service: master-db","title_align":"left","title_size":"16","type":"topology_map"},"layout":{"height":4,"width":3,"x":5,"y":5},"id":4934070150198104}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/9d4363b2-7508-11ee-86ac-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"9d4363b2-7508-11ee-86ac-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackTopologyMap-local-1698439033","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackTopologyMap-local-1698439033","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"requests":[{"query":[{"data_source":"service_map","filters":["env:prod","datacenter:dc1"],"service":"master-db"}],"request_type":"topology"}],"title":"env: prod, datacenter:dc1, service: master-db","title_align":"left","title_size":"16","type":"topology_map"},"layout":{"height":4,"width":3,"x":5,"y":5},"id":4934070150198104}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/9d4363b2-7508-11ee-86ac-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"9d4363b2-7508-11ee-86ac-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackTopologyMap-local-1698439033","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackTopologyMap-local-1698439033","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"requests":[{"query":[{"data_source":"service_map","filters":["env:prod","datacenter:dc1"],"service":"master-db"}],"request_type":"topology"}],"title":"env: prod, datacenter:dc1, service: master-db","title_align":"left","title_size":"16","type":"topology_map"},"layout":{"height":4,"width":3,"x":5,"y":5},"id":4934070150198104}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/9d4363b2-7508-11ee-86ac-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"9d4363b2-7508-11ee-86ac-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackTopologyMap-local-1698439033","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackTopologyMap-local-1698439033","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"requests":[{"query":[{"data_source":"service_map","filters":["env:prod","datacenter:dc1"],"service":"master-db"}],"request_type":"topology"}],"title":"env: prod, datacenter:dc1, service: master-db","title_align":"left","title_size":"16","type":"topology_map"},"layout":{"height":4,"width":3,"x":5,"y":5},"id":4934070150198104}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - '*/*' + url: https://api.datadoghq.com/api/v2/powerpacks/9d4363b2-7508-11ee-86ac-da7ad0900002 + method: DELETE + response: + body: "" + headers: + Content-Type: + - text/html; charset=utf-8 + status: 204 No Content + code: 204 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/9d4363b2-7508-11ee-86ac-da7ad0900002 + method: GET + response: + body: '{"errors":["Powerpack with ID 9d4363b2-7508-11ee-86ac-da7ad0900002 not found"]}' + headers: + Content-Type: + - application/json + status: 404 Not Found + code: 404 + duration: "" diff --git a/datadog/tests/provider_test.go b/datadog/tests/provider_test.go index d79da3d26e..c81883ad09 100644 --- a/datadog/tests/provider_test.go +++ b/datadog/tests/provider_test.go @@ -148,8 +148,10 @@ var testFiles2EndpointTags = map[string]string{ "tests/resource_datadog_powerpack_manage_status_test": "powerpacks", "tests/resource_datadog_powerpack_note_test": "powerpacks", "tests/resource_datadog_powerpack_query_value_test": "powerpacks", + "tests/resource_datadog_powerpack_scatterplot_test": "powerpacks", "tests/resource_datadog_powerpack_servicemap_test": "powerpacks", "tests/resource_datadog_powerpack_toplist_test": "powerpacks", + "tests/resource_datadog_powerpack_topology_map_test": "powerpacks", "tests/resource_datadog_powerpack_trace_service_test": "powerpacks", "tests/resource_datadog_downtime_test": "downtimes", "tests/resource_datadog_downtime_schedule_test": "downtimes", diff --git a/datadog/tests/resource_datadog_powerpack_scatterplot_test.go b/datadog/tests/resource_datadog_powerpack_scatterplot_test.go new file mode 100644 index 0000000000..627d0ff819 --- /dev/null +++ b/datadog/tests/resource_datadog_powerpack_scatterplot_test.go @@ -0,0 +1,100 @@ +package test + +import ( + "testing" +) + +const datadogPowerpackScatterplotTest = ` +resource "datadog_powerpack" "scatterplot_powerpack" { + name = "{{uniq}}" + tags = ["tag:foo1"] + description = "Created using the Datadog provider in Terraform" + template_variables { + defaults = ["defaults"] + name = "datacenter" + } + widget { + scatterplot_definition { + title_size = "16" + yaxis { + scale = "log" + include_zero = false + min = "1" + label = "mem (Gib)" + } + title_align = "right" + color_by_groups = ["app"] + xaxis { + scale = "log" + max = "100" + min = "0" + label = "cpu (%)" + include_zero = false + } + title = "system.mem.used and system.cpu.user by service,team,app colored by app" + request { + y { + q = "avg:system.mem.used{env:prod} by {service, team, app}" + aggregator = "avg" + } + x { + q = "avg:system.cpu.user{account:prod} by {service, team, app}" + aggregator = "avg" + } + } + custom_link { + link = "https://app.datadoghq.com/dashboard/lists" + label = "Test Custom Link label" + } + custom_link { + link = "https://app.datadoghq.com/dashboard/lists" + is_hidden = true + override_label = "logs" + } + } + } +} +` + +var datadogPowerpackScatterplotTestAsserts = []string{ + // Powerpack metadata + "name = {{uniq}}", + "description = Created using the Datadog provider in Terraform", + "widget.# = 1", + "tags.# = 1", + "tags.0 = tag:foo1", + // scatterplot widget + "widget.0.scatterplot_definition.0.xaxis.0.min = 0", + "widget.0.scatterplot_definition.0.color_by_groups.0 = app", + "widget.0.scatterplot_definition.0.title = system.mem.used and system.cpu.user by service,team,app colored by app", + "widget.0.scatterplot_definition.0.xaxis.0.max = 100", + "widget.0.scatterplot_definition.0.yaxis.0.scale = log", + "widget.0.scatterplot_definition.0.title_size = 16", + "widget.0.scatterplot_definition.0.yaxis.0.min = 1", + "widget.0.scatterplot_definition.0.yaxis.0.label = mem (Gib)", + "widget.0.scatterplot_definition.0.xaxis.0.include_zero = false", + "widget.0.scatterplot_definition.0.request.0.x.0.q = avg:system.cpu.user{account:prod} by {service, team, app}", + "widget.0.scatterplot_definition.0.title_align = right", + "widget.0.scatterplot_definition.0.request.0.x.0.aggregator = avg", + "widget.0.scatterplot_definition.0.yaxis.0.include_zero = false", + "widget.0.scatterplot_definition.0.yaxis.0.max =", + "widget.0.scatterplot_definition.0.request.0.y.0.q = avg:system.mem.used{env:prod} by {service, team, app}", + "widget.0.scatterplot_definition.0.xaxis.0.label = cpu (%)", + "widget.0.scatterplot_definition.0.request.0.y.0.aggregator = avg", + "widget.0.scatterplot_definition.0.xaxis.0.scale = log", + "widget.0.scatterplot_definition.0.custom_link.# = 2", + "widget.0.scatterplot_definition.0.custom_link.0.label = Test Custom Link label", + "widget.0.scatterplot_definition.0.custom_link.0.link = https://app.datadoghq.com/dashboard/lists", + "widget.0.scatterplot_definition.0.custom_link.1.override_label = logs", + "widget.0.scatterplot_definition.0.custom_link.1.link = https://app.datadoghq.com/dashboard/lists", + "widget.0.scatterplot_definition.0.custom_link.1.is_hidden = true", + // Template Variables + "template_variables.# = 1", + "template_variables.0.name = datacenter", + "template_variables.0.defaults.# = 1", + "template_variables.0.defaults.0 = defaults", +} + +func TestAccDatadogPowerpackScatterplot(t *testing.T) { + testAccDatadogPowerpackWidgetUtil(t, datadogPowerpackScatterplotTest, "datadog_powerpack.scatterplot_powerpack", datadogPowerpackScatterplotTestAsserts) +} diff --git a/datadog/tests/resource_datadog_powerpack_topology_map_test.go b/datadog/tests/resource_datadog_powerpack_topology_map_test.go new file mode 100644 index 0000000000..c8a9509077 --- /dev/null +++ b/datadog/tests/resource_datadog_powerpack_topology_map_test.go @@ -0,0 +1,87 @@ +package test + +import ( + "testing" +) + +const datadogPowerpackTopologyMapTest = ` +resource "datadog_powerpack" "topology_map_powerpack" { + name = "{{uniq}}" + tags = ["tag:foo1"] + description = "Created using the Datadog provider in Terraform" + template_variables { + defaults = ["defaults"] + name = "datacenter" + } + widget { + topology_map_definition { + request { + request_type = "topology" + query { + data_source = "service_map" + service = "master-db" + filters = ["env:prod","datacenter:dc1"] + } + } + title = "env: prod, datacenter:dc1, service: master-db" + title_size = "16" + title_align = "left" + custom_link { + link = "https://app.datadoghq.com/dashboard/lists" + label = "Test Custom Link label" + } + custom_link { + link = "https://app.datadoghq.com/dashboard/lists" + is_hidden = true + override_label = "logs" + } + } + widget_layout { + height = 4 + width = 3 + x = 5 + y = 5 + } + } +} +` + +var datadogPowerpackTopologyMapTestAsserts = []string{ + // Powerpack metadata + "name = {{uniq}}", + "description = Created using the Datadog provider in Terraform", + "widget.# = 1", + "tags.# = 1", + "tags.0 = tag:foo1", + // Topology map widget + "widget.0.widget_layout.0.width = 3", + "widget.0.topology_map_definition.0.title_align = left", + "description = Created using the Datadog provider in Terraform", + "widget.0.widget_layout.0.x = 5", + "widget.0.topology_map_definition.0.title_size = 16", + "widget.0.topology_map_definition.0.request.0.request_type = topology", + "widget.0.topology_map_definition.0.request.0.query.0.data_source = service_map", + "widget.0.topology_map_definition.0.request.0.query.0.data_source = service_map", + "widget.0.topology_map_definition.0.request.0.query.0.data_source = service_map", + "widget.0.topology_map_definition.0.request.0.query.0.filters.0 = env:prod", + "widget.0.topology_map_definition.0.request.0.query.0.service = master-db", + "widget.0.topology_map_definition.0.request.0.query.0.filters.1 = datacenter:dc1", + "widget.0.widget_layout.0.y = 5", + "widget.0.topology_map_definition.0.title = env: prod, datacenter:dc1, service: master-db", + "widget.0.widget_layout.0.height = 4", + "widget.0.topology_map_definition.0.custom_link.# = 2", + "widget.0.topology_map_definition.0.custom_link.0.label = Test Custom Link label", + "widget.0.topology_map_definition.0.custom_link.0.link = https://app.datadoghq.com/dashboard/lists", + "widget.0.topology_map_definition.0.custom_link.1.override_label = logs", + "widget.0.topology_map_definition.0.custom_link.1.link = https://app.datadoghq.com/dashboard/lists", + "widget.0.topology_map_definition.0.custom_link.1.is_hidden = true", + // Template Variables + "template_variables.# = 1", + "template_variables.0.name = datacenter", + "template_variables.0.defaults.# = 1", + "template_variables.0.defaults.0 = defaults", +} + +func TestAccDatadogPowerpackTopologyMap(t *testing.T) { + testAccDatadogPowerpackWidgetUtil(t, datadogPowerpackTopologyMapTest, "datadog_powerpack.topology_map_powerpack", datadogPowerpackTopologyMapTestAsserts) +} From c88b7fea9a44c201ee140895aa44231f43c0536e Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Mon, 30 Oct 2023 17:48:07 -0400 Subject: [PATCH 27/48] support for heatmap --- datadog/resource_datadog_powerpack.go | 12 +- .../TestAccDatadogPowerpackHeatMap.freeze | 1 + .../TestAccDatadogPowerpackHeatMap.yaml | 106 ++++++++++++++++++ datadog/tests/provider_test.go | 1 + ...resource_datadog_powerpack_heatmap_test.go | 87 ++++++++++++++ 5 files changed, 206 insertions(+), 1 deletion(-) create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackHeatMap.freeze create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackHeatMap.yaml create mode 100644 datadog/tests/resource_datadog_powerpack_heatmap_test.go diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index 0fd0e26b86..696c54be5a 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -414,8 +414,12 @@ func dashboardWidgetsToPpkWidgets(terraformWidgets *[]map[string]interface{}) ([ if widgetDef["style"] != nil { widgetDef["style"] = widgetDef["style"].([]map[string]interface{})[0] } + if widgetDef["event"] != nil { + widgetDef["events"] = (*widgetDef["event"].(*[]map[string]string)) + delete(widgetDef, "event") + } if widgetDef["xaxis"] != nil { - widgetDef["xaxis"] = widgetDef["xaxis"].([]map[string]interface{})[0] + widgetDef["xaxis"] = (widgetDef["xaxis"].([]map[string]interface{}))[0] } if widgetDef["yaxis"] != nil { widgetDef["yaxis"] = widgetDef["yaxis"].([]map[string]interface{})[0] @@ -506,6 +510,10 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) if widgetDefinition["yaxis"] != nil { widgetDefinition["yaxis"] = []interface{}{widgetDefinition["yaxis"].(map[string]interface{})} } + if widgetDefinition["events"] != nil { + widgetDefinition["event"] = widgetDefinition["events"] + delete(terraformWidget.Definition, "events") + } // TF -> json conversion processes precision as float64, it needs to be converted to // an int value to be saved successfully if widgetDefinition["precision"] != nil { @@ -528,6 +536,8 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) definition = datadogV1.EventTimelineWidgetDefinitionAsWidgetDefinition(buildDatadogEventTimelineDefinition(widgetDefinition)) case "free_text": definition = datadogV1.FreeTextWidgetDefinitionAsWidgetDefinition(buildDatadogFreeTextDefinition(widgetDefinition)) + case "heatmap": + definition = datadogV1.HeatMapWidgetDefinitionAsWidgetDefinition(buildDatadogHeatmapDefinition(widgetDefinition)) case "hostmap": definition = datadogV1.HostMapWidgetDefinitionAsWidgetDefinition(buildDatadogHostmapDefinition(widgetDefinition)) case "iframe": diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackHeatMap.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackHeatMap.freeze new file mode 100644 index 0000000000..d0c519a80c --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackHeatMap.freeze @@ -0,0 +1 @@ +2023-10-30T17:47:16.963361-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackHeatMap.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackHeatMap.yaml new file mode 100644 index 0000000000..6af71e404c --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackHeatMap.yaml @@ -0,0 +1,106 @@ +--- +version: 1 +interactions: +- request: + body: | + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackHeatMap-local-1698702436","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"events":[{"q":"env:prod","tags_execution":"and"}],"legend_size":"2","requests":[{"q":"avg:system.cpu.user{account:prod} by {app}","style":{"palette":"blue"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by app","title_align":"center","title_size":"16","type":"heatmap","yaxis":{"include_zero":false,"max":"100"}}}]}},"name":"tf-TestAccDatadogPowerpackHeatMap-local-1698702436","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks + method: POST + response: + body: | + {"data":{"type":"powerpack","id":"e5f4bc3e-776d-11ee-b41a-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackHeatMap-local-1698702436","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackHeatMap-local-1698702436","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"events":[{"q":"env:prod","tags_execution":"and"}],"legend_size":"2","requests":[{"q":"avg:system.cpu.user{account:prod} by {app}","style":{"palette":"blue"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by app","title_align":"center","title_size":"16","type":"heatmap","yaxis":{"include_zero":false,"max":"100"}},"id":2562051174964675}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/e5f4bc3e-776d-11ee-b41a-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"e5f4bc3e-776d-11ee-b41a-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackHeatMap-local-1698702436","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackHeatMap-local-1698702436","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"events":[{"q":"env:prod","tags_execution":"and"}],"legend_size":"2","requests":[{"q":"avg:system.cpu.user{account:prod} by {app}","style":{"palette":"blue"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by app","title_align":"center","title_size":"16","type":"heatmap","yaxis":{"include_zero":false,"max":"100"}},"id":2562051174964675}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/e5f4bc3e-776d-11ee-b41a-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"e5f4bc3e-776d-11ee-b41a-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackHeatMap-local-1698702436","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackHeatMap-local-1698702436","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"events":[{"q":"env:prod","tags_execution":"and"}],"legend_size":"2","requests":[{"q":"avg:system.cpu.user{account:prod} by {app}","style":{"palette":"blue"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by app","title_align":"center","title_size":"16","type":"heatmap","yaxis":{"include_zero":false,"max":"100"}},"id":2562051174964675}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/e5f4bc3e-776d-11ee-b41a-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"e5f4bc3e-776d-11ee-b41a-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackHeatMap-local-1698702436","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackHeatMap-local-1698702436","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"events":[{"q":"env:prod","tags_execution":"and"}],"legend_size":"2","requests":[{"q":"avg:system.cpu.user{account:prod} by {app}","style":{"palette":"blue"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by app","title_align":"center","title_size":"16","type":"heatmap","yaxis":{"include_zero":false,"max":"100"}},"id":2562051174964675}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - '*/*' + url: https://api.datadoghq.com/api/v2/powerpacks/e5f4bc3e-776d-11ee-b41a-da7ad0900002 + method: DELETE + response: + body: "" + headers: + Content-Type: + - text/html; charset=utf-8 + status: 204 No Content + code: 204 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/e5f4bc3e-776d-11ee-b41a-da7ad0900002 + method: GET + response: + body: '{"errors":["Powerpack with ID e5f4bc3e-776d-11ee-b41a-da7ad0900002 not found"]}' + headers: + Content-Type: + - application/json + status: 404 Not Found + code: 404 + duration: "" diff --git a/datadog/tests/provider_test.go b/datadog/tests/provider_test.go index c81883ad09..0a978d5d57 100644 --- a/datadog/tests/provider_test.go +++ b/datadog/tests/provider_test.go @@ -144,6 +144,7 @@ var testFiles2EndpointTags = map[string]string{ "tests/resource_datadog_powerpack_iframe_test": "powerpacks", "tests/resource_datadog_powerpack_image_test": "powerpacks", "tests/resource_datadog_powerpack_free_text_test": "powerpacks", + "tests/resource_datadog_powerpack_heatmap_test": "powerpacks", "tests/resource_datadog_powerpack_hostmap_test": "powerpacks", "tests/resource_datadog_powerpack_manage_status_test": "powerpacks", "tests/resource_datadog_powerpack_note_test": "powerpacks", diff --git a/datadog/tests/resource_datadog_powerpack_heatmap_test.go b/datadog/tests/resource_datadog_powerpack_heatmap_test.go new file mode 100644 index 0000000000..b67013fe53 --- /dev/null +++ b/datadog/tests/resource_datadog_powerpack_heatmap_test.go @@ -0,0 +1,87 @@ +package test + +import ( + "testing" +) + +const datadogPowerpackHeatMapTest = ` +resource "datadog_powerpack" "heatmap_powerpack" { + name = "{{uniq}}" + tags = ["tag:foo1"] + description = "Created using the Datadog provider in Terraform" + template_variables { + defaults = ["defaults"] + name = "datacenter" + } + widget { + heatmap_definition { + title = "Avg of system.cpu.user over account:prod by app" + title_align = "center" + title_size = "16" + yaxis { + max = "100" + } + request { + q = "avg:system.cpu.user{account:prod} by {app}" + style { + palette = "blue" + } + } + event { + q = "env:prod" + tags_execution = "and" + } + show_legend = true + legend_size = "2" + custom_link { + link = "https://app.datadoghq.com/dashboard/lists" + label = "Test Custom Link label" + } + custom_link { + link = "https://app.datadoghq.com/dashboard/lists" + is_hidden = true + override_label = "logs" + } + } + } +} +` + +var datadogPowerpackHeatMapTestAsserts = []string{ + // Powerpack metadata + "name = {{uniq}}", + "description = Created using the Datadog provider in Terraform", + "widget.# = 1", + "tags.# = 1", + "tags.0 = tag:foo1", + // heatmap widget + "widget.0.heatmap_definition.0.title = Avg of system.cpu.user over account:prod by app", + "widget.0.heatmap_definition.0.title_align = center", + "widget.0.heatmap_definition.0.title_size = 16", + "widget.0.heatmap_definition.0.request.0.q = avg:system.cpu.user{account:prod} by {app}", + "widget.0.heatmap_definition.0.request.0.style.0.palette = blue", + "widget.0.heatmap_definition.0.yaxis.0.include_zero = false", + "widget.0.heatmap_definition.0.yaxis.0.label =", + "widget.0.heatmap_definition.0.yaxis.0.max = 100", + "widget.0.heatmap_definition.0.yaxis.0.scale =", + "widget.0.heatmap_definition.0.yaxis.0.min =", + //"widget.0.heatmap_definition.0.event.0.q = env:prod", + //"widget.0.heatmap_definition.0.event.0.tags_execution = and", + "widget.0.heatmap_definition.0.show_legend = true", + "widget.0.heatmap_definition.0.legend_size = 2", + "widget.0.heatmap_definition.0.custom_link.# = 2", + "widget.0.heatmap_definition.0.custom_link.0.label = Test Custom Link label", + "widget.0.heatmap_definition.0.custom_link.0.link = https://app.datadoghq.com/dashboard/lists", + "widget.0.heatmap_definition.0.custom_link.1.override_label = logs", + "widget.0.heatmap_definition.0.custom_link.1.link = https://app.datadoghq.com/dashboard/lists", + "widget.0.heatmap_definition.0.custom_link.1.is_hidden = true", + // Template Variables + "template_variables.# = 1", + "template_variables.0.name = datacenter", + "template_variables.0.defaults.# = 1", + "template_variables.0.defaults.0 = defaults", +} + +func TestAccDatadogPowerpackHeatMap(t *testing.T) { + testAccDatadogPowerpackWidgetUtil(t, datadogPowerpackHeatMapTest, "datadog_powerpack.heatmap_powerpack", datadogPowerpackHeatMapTestAsserts) +} From e430ef77f0411b194c80752f244382946ae0b60f Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Mon, 30 Oct 2023 20:44:23 -0400 Subject: [PATCH 28/48] support for log stream --- datadog/resource_datadog_powerpack.go | 10 +- .../TestAccDatadogPowerpackLogStream.freeze | 1 + .../TestAccDatadogPowerpackLogStream.yaml | 106 ++++++++++++++++++ datadog/tests/provider_test.go | 1 + ...ource_datadog_powerpack_log_stream_test.go | 75 +++++++++++++ 5 files changed, 192 insertions(+), 1 deletion(-) create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackLogStream.freeze create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackLogStream.yaml create mode 100644 datadog/tests/resource_datadog_powerpack_log_stream_test.go diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index 696c54be5a..034d1c6873 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -415,7 +415,7 @@ func dashboardWidgetsToPpkWidgets(terraformWidgets *[]map[string]interface{}) ([ widgetDef["style"] = widgetDef["style"].([]map[string]interface{})[0] } if widgetDef["event"] != nil { - widgetDef["events"] = (*widgetDef["event"].(*[]map[string]string)) + widgetDef["events"] = *widgetDef["event"].(*[]map[string]string) delete(widgetDef, "event") } if widgetDef["xaxis"] != nil { @@ -424,6 +424,9 @@ func dashboardWidgetsToPpkWidgets(terraformWidgets *[]map[string]interface{}) ([ if widgetDef["yaxis"] != nil { widgetDef["yaxis"] = widgetDef["yaxis"].([]map[string]interface{})[0] } + if widgetDef["sort"] != nil { + widgetDef["sort"] = widgetDef["sort"].([]map[string]interface{})[0] + } if widgetDef["custom_link"] != nil { // Some widgets have a "custom_links" field, while API Spec has a "custom_link" field // Here we set the "custom_links" field and remove "custom_link" @@ -510,6 +513,9 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) if widgetDefinition["yaxis"] != nil { widgetDefinition["yaxis"] = []interface{}{widgetDefinition["yaxis"].(map[string]interface{})} } + if widgetDefinition["sort"] != nil { + widgetDefinition["sort"] = []interface{}{widgetDefinition["sort"].(map[string]interface{})} + } if widgetDefinition["events"] != nil { widgetDefinition["event"] = widgetDefinition["events"] delete(terraformWidget.Definition, "events") @@ -544,6 +550,8 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) definition = datadogV1.IFrameWidgetDefinitionAsWidgetDefinition(buildDatadogIframeDefinition(widgetDefinition)) case "image": definition = datadogV1.ImageWidgetDefinitionAsWidgetDefinition(buildDatadogImageDefinition(widgetDefinition)) + case "log_stream": + definition = datadogV1.LogStreamWidgetDefinitionAsWidgetDefinition(buildDatadogLogStreamDefinition(widgetDefinition)) case "manage_status": definition = datadogV1.MonitorSummaryWidgetDefinitionAsWidgetDefinition(buildDatadogManageStatusDefinition(widgetDefinition)) case "note": diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackLogStream.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackLogStream.freeze new file mode 100644 index 0000000000..3370ce3af4 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackLogStream.freeze @@ -0,0 +1 @@ +2023-10-30T20:38:44.024673-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackLogStream.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackLogStream.yaml new file mode 100644 index 0000000000..c1340e7978 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackLogStream.yaml @@ -0,0 +1,106 @@ +--- +version: 1 +interactions: +- request: + body: | + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackLogStream-local-1698712724","type":"group","widgets":[{"definition":{"columns":["core_host","core_service"],"indexes":["main"],"message_display":"expanded-md","query":"status:error env:prod","show_date_column":true,"show_message_column":true,"sort":{"column":"time","order":"desc"},"title":"Log Stream","title_align":"right","title_size":"16","type":"log_stream"},"layout":{"height":5,"width":5,"x":5,"y":5}}]}},"name":"tf-TestAccDatadogPowerpackLogStream-local-1698712724","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks + method: POST + response: + body: | + {"data":{"type":"powerpack","id":"d97ffcda-7785-11ee-9455-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackLogStream-local-1698712724","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackLogStream-local-1698712724","type":"group","widgets":[{"definition":{"columns":["core_host","core_service"],"indexes":["main"],"message_display":"expanded-md","query":"status:error env:prod","show_date_column":true,"show_message_column":true,"sort":{"column":"time","order":"desc"},"title":"Log Stream","title_align":"right","title_size":"16","type":"log_stream"},"layout":{"height":5,"width":5,"x":5,"y":5},"id":4611087252319878}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/d97ffcda-7785-11ee-9455-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"d97ffcda-7785-11ee-9455-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackLogStream-local-1698712724","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackLogStream-local-1698712724","type":"group","widgets":[{"definition":{"columns":["core_host","core_service"],"indexes":["main"],"message_display":"expanded-md","query":"status:error env:prod","show_date_column":true,"show_message_column":true,"sort":{"column":"time","order":"desc"},"title":"Log Stream","title_align":"right","title_size":"16","type":"log_stream"},"layout":{"height":5,"width":5,"x":5,"y":5},"id":4611087252319878}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/d97ffcda-7785-11ee-9455-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"d97ffcda-7785-11ee-9455-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackLogStream-local-1698712724","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackLogStream-local-1698712724","type":"group","widgets":[{"definition":{"columns":["core_host","core_service"],"indexes":["main"],"message_display":"expanded-md","query":"status:error env:prod","show_date_column":true,"show_message_column":true,"sort":{"column":"time","order":"desc"},"title":"Log Stream","title_align":"right","title_size":"16","type":"log_stream"},"layout":{"height":5,"width":5,"x":5,"y":5},"id":4611087252319878}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/d97ffcda-7785-11ee-9455-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"d97ffcda-7785-11ee-9455-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackLogStream-local-1698712724","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackLogStream-local-1698712724","type":"group","widgets":[{"definition":{"columns":["core_host","core_service"],"indexes":["main"],"message_display":"expanded-md","query":"status:error env:prod","show_date_column":true,"show_message_column":true,"sort":{"column":"time","order":"desc"},"title":"Log Stream","title_align":"right","title_size":"16","type":"log_stream"},"layout":{"height":5,"width":5,"x":5,"y":5},"id":4611087252319878}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - '*/*' + url: https://api.datadoghq.com/api/v2/powerpacks/d97ffcda-7785-11ee-9455-da7ad0900002 + method: DELETE + response: + body: "" + headers: + Content-Type: + - text/html; charset=utf-8 + status: 204 No Content + code: 204 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/d97ffcda-7785-11ee-9455-da7ad0900002 + method: GET + response: + body: '{"errors":["Powerpack with ID d97ffcda-7785-11ee-9455-da7ad0900002 not found"]}' + headers: + Content-Type: + - application/json + status: 404 Not Found + code: 404 + duration: "" diff --git a/datadog/tests/provider_test.go b/datadog/tests/provider_test.go index 0a978d5d57..dd1f7bd558 100644 --- a/datadog/tests/provider_test.go +++ b/datadog/tests/provider_test.go @@ -146,6 +146,7 @@ var testFiles2EndpointTags = map[string]string{ "tests/resource_datadog_powerpack_free_text_test": "powerpacks", "tests/resource_datadog_powerpack_heatmap_test": "powerpacks", "tests/resource_datadog_powerpack_hostmap_test": "powerpacks", + "tests/resource_datadog_powerpack_log_stream_test": "powerpacks", "tests/resource_datadog_powerpack_manage_status_test": "powerpacks", "tests/resource_datadog_powerpack_note_test": "powerpacks", "tests/resource_datadog_powerpack_query_value_test": "powerpacks", diff --git a/datadog/tests/resource_datadog_powerpack_log_stream_test.go b/datadog/tests/resource_datadog_powerpack_log_stream_test.go new file mode 100644 index 0000000000..606d6e248e --- /dev/null +++ b/datadog/tests/resource_datadog_powerpack_log_stream_test.go @@ -0,0 +1,75 @@ +package test + +import ( + "testing" +) + +const datadogPowerpackLogStreamTest = ` +resource "datadog_powerpack" "logstream_powerpack" { + name = "{{uniq}}" + tags = ["tag:foo1"] + description = "Created using the Datadog provider in Terraform" + template_variables { + defaults = ["defaults"] + name = "datacenter" + } + widget { + log_stream_definition { + title = "Log Stream" + title_align = "right" + title_size = "16" + show_message_column = "true" + message_display = "expanded-md" + query = "status:error env:prod" + show_date_column = "true" + indexes = ["main"] + columns = ["core_host", "core_service"] + sort { + column = "time" + order = "desc" + } + } + widget_layout { + height = 5 + width = 5 + x = 5 + y = 5 + } + } +} +` + +var datadogPowerpackLogStreamTestAsserts = []string{ + // Powerpack metadata + "name = {{uniq}}", + "description = Created using the Datadog provider in Terraform", + "widget.# = 1", + "tags.# = 1", + "tags.0 = tag:foo1", + // Log stream widget + "widget.0.log_stream_definition.0.query = status:error env:prod", + "widget.0.log_stream_definition.0.title_align = right", + "widget.0.log_stream_definition.0.show_date_column = true", + "widget.0.log_stream_definition.0.columns.0 = core_host", + "widget.0.log_stream_definition.0.show_message_column = true", + "widget.0.widget_layout.0.width = 5", + "widget.0.widget_layout.0.x = 5", + "widget.0.log_stream_definition.0.message_display = expanded-md", + "widget.0.widget_layout.0.height = 5", + "widget.0.log_stream_definition.0.columns.1 = core_service", + "widget.0.log_stream_definition.0.title_size = 16", + "widget.0.widget_layout.0.y = 5", + "widget.0.log_stream_definition.0.sort.0.column = time", + "widget.0.log_stream_definition.0.title = Log Stream", + "widget.0.log_stream_definition.0.sort.0.order = desc", + "widget.0.log_stream_definition.0.indexes.0 = main", + // Template Variables + "template_variables.# = 1", + "template_variables.0.name = datacenter", + "template_variables.0.defaults.# = 1", + "template_variables.0.defaults.0 = defaults", +} + +func TestAccDatadogPowerpackLogStream(t *testing.T) { + testAccDatadogPowerpackWidgetUtil(t, datadogPowerpackLogStreamTest, "datadog_powerpack.logstream_powerpack", datadogPowerpackLogStreamTestAsserts) +} From 4ad29958630f335cf1cbc954e93c7a9a175e21b1 Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Mon, 30 Oct 2023 22:00:28 -0400 Subject: [PATCH 29/48] add support for list stream --- datadog/resource_datadog_powerpack.go | 8 ++ .../TestAccDatadogPowerpackListStream.freeze | 1 + .../TestAccDatadogPowerpackListStream.yaml | 106 ++++++++++++++++++ datadog/tests/provider_test.go | 1 + ...urce_datadog_powerpack_list_stream_test.go | 86 ++++++++++++++ 5 files changed, 202 insertions(+) create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackListStream.freeze create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackListStream.yaml create mode 100644 datadog/tests/resource_datadog_powerpack_list_stream_test.go diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index 034d1c6873..06a0f82e8f 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -342,6 +342,9 @@ func normalizeWidgetDefRequests(widgetDefRequests []map[string]interface{}) []ma // TF generates a style list, whereas API expects a single element widgetDefRequest["y"] = widgetDefRequest["y"].([]map[string]interface{})[0] } + if widgetDefRequest["query"] != nil { + widgetDefRequest["query"] = widgetDefRequest["query"].([]map[string]interface{})[0] + } normalizedWidgetDefRequests[i] = widgetDefRequest } return normalizedWidgetDefRequests @@ -491,6 +494,9 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) if widgetDefRequestNormalized["apm_stats_query"] != nil { widgetDefRequestNormalized["apm_stats_query"] = []interface{}{widgetDefRequestNormalized["apm_stats_query"]} } + if widgetDefRequestNormalized["query"] != nil { + widgetDefRequestNormalized["query"] = []interface{}{widgetDefRequestNormalized["query"].(interface{})} + } widgetDefRequests[i] = widgetDefRequestNormalized } terraformWidget.Definition["request"] = widgetDefRequests @@ -550,6 +556,8 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) definition = datadogV1.IFrameWidgetDefinitionAsWidgetDefinition(buildDatadogIframeDefinition(widgetDefinition)) case "image": definition = datadogV1.ImageWidgetDefinitionAsWidgetDefinition(buildDatadogImageDefinition(widgetDefinition)) + case "list_stream": + definition = datadogV1.ListStreamWidgetDefinitionAsWidgetDefinition(buildDatadogListStreamDefinition(widgetDefinition)) case "log_stream": definition = datadogV1.LogStreamWidgetDefinitionAsWidgetDefinition(buildDatadogLogStreamDefinition(widgetDefinition)) case "manage_status": diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackListStream.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackListStream.freeze new file mode 100644 index 0000000000..af4691c40f --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackListStream.freeze @@ -0,0 +1 @@ +2023-10-30T21:52:53.923028-04:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackListStream.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackListStream.yaml new file mode 100644 index 0000000000..54cd896288 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackListStream.yaml @@ -0,0 +1,106 @@ +--- +version: 1 +interactions: +- request: + body: | + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackListStream-local-1698717173","type":"group","widgets":[{"definition":{"requests":[{"columns":[{"field":"details","width":"auto"}],"query":{"data_source":"rum_issue_stream","query_string":""},"response_format":"event_list"},{"columns":[{"field":"details","width":"auto"}],"query":{"data_source":"apm_issue_stream","indexes":["timestamp","message"],"query_string":"env: prod"},"response_format":"event_list"}],"title":"List Stream 1","title_align":"right","title_size":"16","type":"list_stream"},"layout":{"height":5,"width":5,"x":5,"y":5}}]}},"name":"tf-TestAccDatadogPowerpackListStream-local-1698717173","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks + method: POST + response: + body: | + {"data":{"type":"powerpack","id":"35e1c6f2-7790-11ee-812b-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackListStream-local-1698717173","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackListStream-local-1698717173","type":"group","widgets":[{"definition":{"requests":[{"columns":[{"field":"details","width":"auto"}],"query":{"data_source":"rum_issue_stream","query_string":""},"response_format":"event_list"},{"columns":[{"field":"details","width":"auto"}],"query":{"data_source":"apm_issue_stream","indexes":["timestamp","message"],"query_string":"env: prod"},"response_format":"event_list"}],"title":"List Stream 1","title_align":"right","title_size":"16","type":"list_stream"},"layout":{"height":5,"width":5,"x":5,"y":5},"id":4489716557213225}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/35e1c6f2-7790-11ee-812b-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"35e1c6f2-7790-11ee-812b-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackListStream-local-1698717173","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackListStream-local-1698717173","type":"group","widgets":[{"definition":{"requests":[{"columns":[{"field":"details","width":"auto"}],"query":{"data_source":"rum_issue_stream","query_string":""},"response_format":"event_list"},{"columns":[{"field":"details","width":"auto"}],"query":{"data_source":"apm_issue_stream","indexes":["timestamp","message"],"query_string":"env: prod"},"response_format":"event_list"}],"title":"List Stream 1","title_align":"right","title_size":"16","type":"list_stream"},"layout":{"height":5,"width":5,"x":5,"y":5},"id":4489716557213225}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/35e1c6f2-7790-11ee-812b-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"35e1c6f2-7790-11ee-812b-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackListStream-local-1698717173","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackListStream-local-1698717173","type":"group","widgets":[{"definition":{"requests":[{"columns":[{"field":"details","width":"auto"}],"query":{"data_source":"rum_issue_stream","query_string":""},"response_format":"event_list"},{"columns":[{"field":"details","width":"auto"}],"query":{"data_source":"apm_issue_stream","indexes":["timestamp","message"],"query_string":"env: prod"},"response_format":"event_list"}],"title":"List Stream 1","title_align":"right","title_size":"16","type":"list_stream"},"layout":{"height":5,"width":5,"x":5,"y":5},"id":4489716557213225}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/35e1c6f2-7790-11ee-812b-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"35e1c6f2-7790-11ee-812b-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackListStream-local-1698717173","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackListStream-local-1698717173","type":"group","widgets":[{"definition":{"requests":[{"columns":[{"field":"details","width":"auto"}],"query":{"data_source":"rum_issue_stream","query_string":""},"response_format":"event_list"},{"columns":[{"field":"details","width":"auto"}],"query":{"data_source":"apm_issue_stream","indexes":["timestamp","message"],"query_string":"env: prod"},"response_format":"event_list"}],"title":"List Stream 1","title_align":"right","title_size":"16","type":"list_stream"},"layout":{"height":5,"width":5,"x":5,"y":5},"id":4489716557213225}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - '*/*' + url: https://api.datadoghq.com/api/v2/powerpacks/35e1c6f2-7790-11ee-812b-da7ad0900002 + method: DELETE + response: + body: "" + headers: + Content-Type: + - text/html; charset=utf-8 + status: 204 No Content + code: 204 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/35e1c6f2-7790-11ee-812b-da7ad0900002 + method: GET + response: + body: '{"errors":["Powerpack with ID 35e1c6f2-7790-11ee-812b-da7ad0900002 not found"]}' + headers: + Content-Type: + - application/json + status: 404 Not Found + code: 404 + duration: "" diff --git a/datadog/tests/provider_test.go b/datadog/tests/provider_test.go index dd1f7bd558..5c8e031fa0 100644 --- a/datadog/tests/provider_test.go +++ b/datadog/tests/provider_test.go @@ -146,6 +146,7 @@ var testFiles2EndpointTags = map[string]string{ "tests/resource_datadog_powerpack_free_text_test": "powerpacks", "tests/resource_datadog_powerpack_heatmap_test": "powerpacks", "tests/resource_datadog_powerpack_hostmap_test": "powerpacks", + "tests/resource_datadog_powerpack_list_stream_test": "powerpacks", "tests/resource_datadog_powerpack_log_stream_test": "powerpacks", "tests/resource_datadog_powerpack_manage_status_test": "powerpacks", "tests/resource_datadog_powerpack_note_test": "powerpacks", diff --git a/datadog/tests/resource_datadog_powerpack_list_stream_test.go b/datadog/tests/resource_datadog_powerpack_list_stream_test.go new file mode 100644 index 0000000000..968353750c --- /dev/null +++ b/datadog/tests/resource_datadog_powerpack_list_stream_test.go @@ -0,0 +1,86 @@ +package test + +import ( + "testing" +) + +const datadogPowerpackListStreamTest = ` +resource "datadog_powerpack" "list_stream_powerpack" { + name = "{{uniq}}" + tags = ["tag:foo1"] + description = "Created using the Datadog provider in Terraform" + template_variables { + defaults = ["defaults"] + name = "datacenter" + } + widget { + list_stream_definition { + title = "List Stream 1" + title_align = "right" + title_size = "16" + request { + response_format = "event_list" + query { + data_source = "rum_issue_stream" + } + columns { + field = "details" + width = "auto" + } + } + request { + response_format = "event_list" + query { + data_source = "apm_issue_stream" + query_string = "env: prod" + indexes = ["timestamp", "message"] + } + columns { + field = "details" + width = "auto" + } + } + } + widget_layout { + height = 5 + width = 5 + x = 5 + y = 5 + } + } +} +` + +var datadogPowerpackListStreamTestAsserts = []string{ + // Powerpack metadata + "name = {{uniq}}", + "description = Created using the Datadog provider in Terraform", + "widget.# = 1", + "tags.# = 1", + "tags.0 = tag:foo1", + // list_stream widget + "widget.0.list_stream_definition.0.request.0.response_format = event_list", + "widget.0.list_stream_definition.0.request.0.query.0.data_source = rum_issue_stream", + "widget.0.list_stream_definition.0.request.0.columns.0.field = details", + "widget.0.list_stream_definition.0.request.0.columns.0.width = auto", + "widget.0.list_stream_definition.0.request.1.response_format = event_list", + "widget.0.list_stream_definition.0.request.1.query.0.data_source = apm_issue_stream", + "widget.0.list_stream_definition.0.request.1.query.0.query_string = env: prod", + "widget.0.list_stream_definition.0.request.1.query.0.indexes.0 = timestamp", + "widget.0.list_stream_definition.0.request.1.query.0.indexes.1 = message", + "widget.0.list_stream_definition.0.request.1.columns.0.field = details", + "widget.0.list_stream_definition.0.request.1.columns.0.width = auto", + "widget.0.widget_layout.0.height = 5", + "widget.0.widget_layout.0.width = 5", + "widget.0.widget_layout.0.x = 5", + "widget.0.widget_layout.0.y = 5", + // Template Variables + "template_variables.# = 1", + "template_variables.0.name = datacenter", + "template_variables.0.defaults.# = 1", + "template_variables.0.defaults.0 = defaults", +} + +func TestAccDatadogPowerpackListStream(t *testing.T) { + testAccDatadogPowerpackWidgetUtil(t, datadogPowerpackListStreamTest, "datadog_powerpack.list_stream_powerpack", datadogPowerpackListStreamTestAsserts) +} From 56f26481447c918adfa294761cba5a9636aabcca Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Mon, 30 Oct 2023 22:58:22 -0400 Subject: [PATCH 30/48] support for slo --- datadog/resource_datadog_powerpack.go | 11 ++++ .../TestAccDatadogPowerpackSlo.freeze | 1 + datadog/tests/provider_test.go | 1 + .../resource_datadog_powerpack_slo_test.go | 62 +++++++++++++++++++ 4 files changed, 75 insertions(+) create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackSlo.freeze create mode 100644 datadog/tests/resource_datadog_powerpack_slo_test.go diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index 06a0f82e8f..45bfc960cf 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -345,6 +345,10 @@ func normalizeWidgetDefRequests(widgetDefRequests []map[string]interface{}) []ma if widgetDefRequest["query"] != nil { widgetDefRequest["query"] = widgetDefRequest["query"].([]map[string]interface{})[0] } + if widgetDefRequest["formula"] != nil { + widgetDefRequest["formulas"] = widgetDefRequest["formula"] + delete(widgetDefRequest, "formula") + } normalizedWidgetDefRequests[i] = widgetDefRequest } return normalizedWidgetDefRequests @@ -379,6 +383,9 @@ func dashboardWidgetsToPpkWidgets(terraformWidgets *[]map[string]interface{}) ([ // a type with multiple underscores. To parse a valid type name, we take a substring up until the last // underscore. Ex: free_text_definition -> free_text, hostmap_definition -> hostmap widgetDef["type"] = widgetType[:strings.LastIndex(widgetType, "_")] + if widgetDef["type"] == "service_level_objective" { + widgetDef["type"] = "slo" + } // Dashboard widgets set live span at the widget level, we must prevent that for powerpack widgets // where live span is set at the resource level. if widgetDef["live_span"] != nil { @@ -570,6 +577,8 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) definition = datadogV1.ScatterPlotWidgetDefinitionAsWidgetDefinition(buildDatadogScatterplotDefinition(widgetDefinition)) case "servicemap": definition = datadogV1.ServiceMapWidgetDefinitionAsWidgetDefinition(buildDatadogServiceMapDefinition(widgetDefinition)) + case "slo": + definition = datadogV1.SLOWidgetDefinitionAsWidgetDefinition(buildDatadogServiceLevelObjectiveDefinition(widgetDefinition)) case "group": diags = append(diags, diag.Diagnostic{ Severity: diag.Error, @@ -588,6 +597,8 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) definition = datadogV1.TopologyMapWidgetDefinitionAsWidgetDefinition(buildDatadogTopologyMapDefinition(widgetDefinition)) case "trace_service": definition = datadogV1.ServiceSummaryWidgetDefinitionAsWidgetDefinition(buildDatadogTraceServiceDefinition(widgetDefinition)) + case "treemap": + definition = datadogV1.TreeMapWidgetDefinitionAsWidgetDefinition(buildDatadogTreemapDefinition(widgetDefinition)) default: diags = append(diags, diag.Diagnostic{ Severity: diag.Error, diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackSlo.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackSlo.freeze new file mode 100644 index 0000000000..d41e82ce43 --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackSlo.freeze @@ -0,0 +1 @@ +2023-10-30T22:57:34.963347-04:00 \ No newline at end of file diff --git a/datadog/tests/provider_test.go b/datadog/tests/provider_test.go index 5c8e031fa0..f89e7ffcfd 100644 --- a/datadog/tests/provider_test.go +++ b/datadog/tests/provider_test.go @@ -153,6 +153,7 @@ var testFiles2EndpointTags = map[string]string{ "tests/resource_datadog_powerpack_query_value_test": "powerpacks", "tests/resource_datadog_powerpack_scatterplot_test": "powerpacks", "tests/resource_datadog_powerpack_servicemap_test": "powerpacks", + "tests/resource_datadog_powerpack_slo_test": "powerpacks", "tests/resource_datadog_powerpack_toplist_test": "powerpacks", "tests/resource_datadog_powerpack_topology_map_test": "powerpacks", "tests/resource_datadog_powerpack_trace_service_test": "powerpacks", diff --git a/datadog/tests/resource_datadog_powerpack_slo_test.go b/datadog/tests/resource_datadog_powerpack_slo_test.go new file mode 100644 index 0000000000..a9b615dc7e --- /dev/null +++ b/datadog/tests/resource_datadog_powerpack_slo_test.go @@ -0,0 +1,62 @@ +package test + +import ( + "testing" +) + +const datadogPowerpackSloTest = ` +resource "datadog_powerpack" "service_level_objective_powerpack" { + name = "{{uniq}}" + tags = ["tag:foo1"] + description = "Created using the Datadog provider in Terraform" + template_variables { + defaults = ["defaults"] + name = "datacenter" + } + widget { + service_level_objective_definition { + time_windows = ["90d","previous_week","global_time"] + title_size = "16" + show_error_budget = true + title = "" + title_align = "center" + slo_id = "b4c7739b2af25f9d947f828730357832" + view_mode = "both" + view_type = "detail" + global_time_target = "99.0" + additional_query_filters = "!host:excluded_host" + } + } +} +` + +var datadogPowerpackSloTestAsserts = []string{ + // Powerpack metadata + "name = {{uniq}}", + "description = Created using the Datadog provider in Terraform", + "widget.# = 1", + "tags.# = 1", + "tags.0 = tag:foo1", + // service level objective widget + "widget.0.service_level_objective_definition.0.title_size = 16", + "widget.0.service_level_objective_definition.0.slo_id = b4c7739b2af25f9d947f828730357832", + "widget.0.service_level_objective_definition.0.view_mode = both", + "widget.0.service_level_objective_definition.0.time_windows.1 = previous_week", + "widget.0.service_level_objective_definition.0.title_align = center", + "widget.0.service_level_objective_definition.0.view_type = detail", + "widget.0.service_level_objective_definition.0.show_error_budget = true", + "widget.0.service_level_objective_definition.0.time_windows.0 = 90d", + "widget.0.service_level_objective_definition.0.title =", + "widget.0.service_level_objective_definition.0.time_windows.2 = global_time", + "widget.0.service_level_objective_definition.0.global_time_target = 99.0", + "widget.0.service_level_objective_definition.0.additional_query_filters = !host:excluded_host", + // Template Variables + "template_variables.# = 1", + "template_variables.0.name = datacenter", + "template_variables.0.defaults.# = 1", + "template_variables.0.defaults.0 = defaults", +} + +func TestAccDatadogPowerpackSlo(t *testing.T) { + testAccDatadogPowerpackWidgetUtil(t, datadogPowerpackSloTest, "datadog_powerpack.service_level_objective_powerpack", datadogPowerpackSloTestAsserts) +} From 9bd612db233f3feb844c8683bdb29917415f8f4b Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Mon, 30 Oct 2023 23:10:34 -0400 Subject: [PATCH 31/48] support for run workflow --- datadog/resource_datadog_powerpack.go | 10 ++++ ...TestAccDatadogPowerpackRun_Workflow.freeze | 1 + datadog/tests/provider_test.go | 1 + ...rce_datadog_powerpack_run_workflow_test.go | 58 +++++++++++++++++++ 4 files changed, 70 insertions(+) create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackRun_Workflow.freeze create mode 100644 datadog/tests/resource_datadog_powerpack_run_workflow_test.go diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index 45bfc960cf..44946f7011 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -428,6 +428,10 @@ func dashboardWidgetsToPpkWidgets(terraformWidgets *[]map[string]interface{}) ([ widgetDef["events"] = *widgetDef["event"].(*[]map[string]string) delete(widgetDef, "event") } + if widgetDef["input"] != nil { + widgetDef["inputs"] = *widgetDef["input"].(*[]map[string]interface{}) + delete(widgetDef, "input") + } if widgetDef["xaxis"] != nil { widgetDef["xaxis"] = (widgetDef["xaxis"].([]map[string]interface{}))[0] } @@ -533,6 +537,10 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) widgetDefinition["event"] = widgetDefinition["events"] delete(terraformWidget.Definition, "events") } + if widgetDefinition["inputs"] != nil { + widgetDefinition["input"] = widgetDefinition["inputs"] + delete(terraformWidget.Definition, "inputs") + } // TF -> json conversion processes precision as float64, it needs to be converted to // an int value to be saved successfully if widgetDefinition["precision"] != nil { @@ -573,6 +581,8 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) definition = datadogV1.NoteWidgetDefinitionAsWidgetDefinition(buildDatadogNoteDefinition(widgetDefinition)) case "query_value": definition = datadogV1.QueryValueWidgetDefinitionAsWidgetDefinition(buildDatadogQueryValueDefinition(widgetDefinition)) + case "run_workflow": + definition = datadogV1.RunWorkflowWidgetDefinitionAsWidgetDefinition(buildDatadogRunWorkflowDefinition(widgetDefinition)) case "scatterplot": definition = datadogV1.ScatterPlotWidgetDefinitionAsWidgetDefinition(buildDatadogScatterplotDefinition(widgetDefinition)) case "servicemap": diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackRun_Workflow.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackRun_Workflow.freeze new file mode 100644 index 0000000000..d86b2f6acc --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackRun_Workflow.freeze @@ -0,0 +1 @@ +2023-10-30T23:09:42.985605-04:00 \ No newline at end of file diff --git a/datadog/tests/provider_test.go b/datadog/tests/provider_test.go index f89e7ffcfd..d2e4d241ca 100644 --- a/datadog/tests/provider_test.go +++ b/datadog/tests/provider_test.go @@ -151,6 +151,7 @@ var testFiles2EndpointTags = map[string]string{ "tests/resource_datadog_powerpack_manage_status_test": "powerpacks", "tests/resource_datadog_powerpack_note_test": "powerpacks", "tests/resource_datadog_powerpack_query_value_test": "powerpacks", + "tests/resource_datadog_powerpack_run_workflow_test": "powerpacks", "tests/resource_datadog_powerpack_scatterplot_test": "powerpacks", "tests/resource_datadog_powerpack_servicemap_test": "powerpacks", "tests/resource_datadog_powerpack_slo_test": "powerpacks", diff --git a/datadog/tests/resource_datadog_powerpack_run_workflow_test.go b/datadog/tests/resource_datadog_powerpack_run_workflow_test.go new file mode 100644 index 0000000000..99eacca859 --- /dev/null +++ b/datadog/tests/resource_datadog_powerpack_run_workflow_test.go @@ -0,0 +1,58 @@ +package test + +import ( + "testing" +) + +const datadogPowerpackRun_WorkflowTest = ` +resource "datadog_powerpack" "run_workflow_powerpack" { + name = "{{uniq}}" + tags = ["tag:foo1"] + description = "Created using the Datadog provider in Terraform" + template_variables { + defaults = ["defaults"] + name = "datacenter" + } + widget { + run_workflow_definition { + title = "My workflow widget" + title_size = "13" + title_align = "left" + workflow_id = "2e055f16-8b6a-4cdd-b452-17a34c44b160" + input { + name = "env" + value = "$Env.value" + } + input { + name = "Foo" + value = "$Env" + } + } + } +} +` + +var datadogPowerpackRun_WorkflowTestAsserts = []string{ + // Powerpack metadata + "name = {{uniq}}", + "description = Created using the Datadog provider in Terraform", + "widget.# = 1", + "tags.# = 1", + "tags.0 = tag:foo1", + // Run Workflow widget + "widget.0.run_workflow_definition.0.title = My workflow widget", + "widget.0.run_workflow_definition.0.workflow_id = 2e055f16-8b6a-4cdd-b452-17a34c44b160", + "widget.0.run_workflow_definition.0.input.0.name = env", + "widget.0.run_workflow_definition.0.input.0.value = $Env.value", + "widget.0.run_workflow_definition.0.input.1.name = Foo", + "widget.0.run_workflow_definition.0.input.1.value = $Env", + // Template Variables + "template_variables.# = 1", + "template_variables.0.name = datacenter", + "template_variables.0.defaults.# = 1", + "template_variables.0.defaults.0 = defaults", +} + +func TestAccDatadogPowerpackRun_Workflow(t *testing.T) { + testAccDatadogPowerpackWidgetUtil(t, datadogPowerpackRun_WorkflowTest, "datadog_powerpack.run_workflow_powerpack", datadogPowerpackRun_WorkflowTestAsserts) +} From bc687a62dae5f74d0a1fe4b3da68a3b35311624e Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Tue, 31 Oct 2023 12:52:39 -0400 Subject: [PATCH 32/48] address Sherzod's cr --- datadog/resource_datadog_powerpack.go | 45 ++++++++++++++------------- 1 file changed, 24 insertions(+), 21 deletions(-) diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index f65fd718e9..933ecf192e 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -6,9 +6,8 @@ import ( "net/http" "strings" - "github.com/hashicorp/terraform-plugin-sdk/v2/helper/validation" - "github.com/DataDog/datadog-api-client-go/v2/api/datadogV1" + "github.com/hashicorp/terraform-plugin-sdk/v2/helper/validation" "github.com/DataDog/datadog-api-client-go/v2/api/datadogV2" "github.com/hashicorp/terraform-plugin-sdk/v2/diag" @@ -46,7 +45,7 @@ func resourceDatadogPowerpack() *schema.Resource { Description: "Whether or not title should be displayed in the powerpack.", }, "tags": { - Type: schema.TypeList, + Type: schema.TypeSet, Optional: true, Description: "List of tags to identify this powerpack.", Elem: &schema.Schema{ @@ -137,16 +136,12 @@ func resourceDatadogPowerpackCreate(ctx context.Context, d *schema.ResourceData, apiInstances := providerConf.DatadogApiInstances auth := providerConf.Auth powerpackPayload, diags := buildDatadogPowerpack(ctx, d) - if diags != nil { - diags = append(diags, diag.Diagnostic{ - Severity: diag.Error, - Summary: fmt.Sprintf("failed to parse resource configuration"), - }) + if diags.HasError() { return diags } powerpack, httpresp, err := apiInstances.GetPowerpackApiV2().CreatePowerpack(auth, *powerpackPayload) if err != nil { - return utils.TranslateClientErrorDiag(err, httpresp, "error creating powerpack error A") + return utils.TranslateClientErrorDiag(err, httpresp, "error creating powerpack") } if err := utils.CheckForUnparsed(powerpack); err != nil { return diag.FromErr(err) @@ -186,11 +181,7 @@ func resourceDatadogPowerpackUpdate(ctx context.Context, d *schema.ResourceData, auth := providerConf.Auth id := d.Id() powerpack, diags := buildDatadogPowerpack(ctx, d) - if diags != nil { - diags = append(diags, diag.Diagnostic{ - Severity: diag.Error, - Summary: fmt.Sprintf("failed to parse resource configuration"), - }) + if diags.HasError() { return diags } @@ -199,7 +190,7 @@ func resourceDatadogPowerpackUpdate(ctx context.Context, d *schema.ResourceData, if httpResponse != nil && httpResponse.StatusCode == 404 { diags = append(diags, diag.Diagnostic{ Severity: diag.Error, - Summary: fmt.Sprintf("failure: %s", err), + Summary: fmt.Sprintf("error updating powerpack: %s", err), }) return diags } @@ -281,9 +272,21 @@ func buildDatadogPowerpack(ctx context.Context, d *schema.ResourceData) (*datado // Fetch widgets in the request form requestWidgets := d.Get("widget").([]interface{}) // Convert and validate them using the Dashboard widget type - datadogWidgets, _ := buildDatadogWidgets(&requestWidgets) + datadogWidgets, err := buildDatadogWidgets(&requestWidgets) + if err != nil { + diags = append(diags, diag.Diagnostic{ + Severity: diag.Error, + Summary: fmt.Sprintf("error constructing widgets: %s", err), + }) + } // Convert to TF widget type for easier parsing - terraformWidgets, _ := buildTerraformWidgets(datadogWidgets, d) + terraformWidgets, err := buildTerraformWidgets(datadogWidgets, d) + if err != nil { + diags = append(diags, diag.Diagnostic{ + Severity: diag.Error, + Summary: fmt.Sprintf("error constructing widgets: %s", err), + }) + } // Finally, build JSON Powerpack API compatible widgets powerpackWidgets, diags := dashboardWidgetsToPpkWidgets(terraformWidgets) @@ -384,17 +387,17 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) Severity: diag.Error, Summary: fmt.Sprintf("powerpacks cannot contain group widgets"), }) - continue + return nil, diags case "powerpack": diags = append(diags, diag.Diagnostic{ Severity: diag.Error, Summary: fmt.Sprintf("powerpacks cannot contain powerpack widgets"), }) - continue + return nil, diags default: diags = append(diags, diag.Diagnostic{ Severity: diag.Error, - Summary: fmt.Sprintf("support for this widget type is still in progress: %s", terraformWidget.Definition["type"]), + Summary: fmt.Sprintf("support for this widget type is not supported: %s", terraformWidget.Definition["type"]), }) continue } @@ -451,7 +454,7 @@ func updatePowerpackState(d *schema.ResourceData, powerpack *datadogV2.Powerpack // Set widgets dashWidgets, diags := ppkWidgetsToDashboardWidgets(powerpack.Data.Attributes.GetGroupWidget().Definition.Widgets) - if diags != nil { + if diags.HasError() { return diags } terraformWidgets, err := buildTerraformWidgets(dashWidgets, d) From 83ca145d5c09c11c33c86db61a2fa456ec8c29bb Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Tue, 31 Oct 2023 13:13:12 -0400 Subject: [PATCH 33/48] change tag type --- datadog/resource_datadog_powerpack.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index 933ecf192e..1dfca96559 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -237,8 +237,8 @@ func buildDatadogPowerpack(ctx context.Context, d *schema.ResourceData) (*datado // Set Tags if v, ok := d.GetOk("tags"); ok { - tags := make([]string, len(v.([]interface{}))) - for i, tag := range v.([]interface{}) { + tags := make([]string, v.(*schema.Set).Len()) + for i, tag := range v.(*schema.Set).List() { tags[i] = tag.(string) } attributes.SetTags(tags) From 323f38621a1dcff15e3ec73e16f1ced963b05234 Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Tue, 31 Oct 2023 15:23:32 -0400 Subject: [PATCH 34/48] update docs --- docs/resources/powerpack.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/resources/powerpack.md b/docs/resources/powerpack.md index b83cc1ce05..58045b588e 100644 --- a/docs/resources/powerpack.md +++ b/docs/resources/powerpack.md @@ -20,7 +20,7 @@ Provides a Datadog powerpack resource. This can be used to create and manage Dat - `description` (String) The description of the powerpack. - `name` (String) The name for the powerpack. - `show_title` (Boolean) Whether or not title should be displayed in the powerpack. -- `tags` (List of String) List of tags to identify this powerpack. +- `tags` (Set of String) List of tags to identify this powerpack. - `template_variables` (Block List) The list of template variables for this powerpack. (see [below for nested schema](#nestedblock--template_variables)) - `widget` (Block List) The list of widgets to display in the powerpack. (see [below for nested schema](#nestedblock--widget)) From 48a19aac01b94bc1094fc4fa22dfd3b56f168411 Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Tue, 31 Oct 2023 16:11:50 -0400 Subject: [PATCH 35/48] extract logic to separate fxns --- datadog/resource_datadog_powerpack.go | 100 +++++++++++++------------- 1 file changed, 50 insertions(+), 50 deletions(-) diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index bcd75e01ba..0950787572 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -326,6 +326,51 @@ func buildDatadogPowerpack(ctx context.Context, d *schema.ResourceData) (*datado } +func normalizeDashboardWidgetDef(widgetDef map[string]interface{}) (map[string]interface{}, diag.Diagnostics) { + var diags diag.Diagnostics + // Dashboard widgets set live span at the widget level, we don't allow that for powerpack widgets + // where live span is set at the resource level. + if widgetDef["live_span"] != nil { + diags = append(diags, diag.Diagnostic{ + Severity: diag.Error, + Summary: fmt.Sprintf("live_span must be set at the powerpack level and will be applied to all widgets"), + }) + return nil, diags + } + + if widgetDef["request"] != nil { + // Distribution/change/heatmap widgets have a "requests" field, while API Spec has a "request" field + // Here we set the "requests" field and remove "request" + widgetDefRequests := *widgetDef["request"].(*[]map[string]interface{}) + widgetDef["requests"] = widgetDefRequests + delete(widgetDef, "request") + } + return widgetDef, diags +} + +func normalizeTerraformWidgetDef(widgetDef map[string]interface{}) map[string]interface{} { + // Dashboard TF widgets have a "requests" field, while API Spec has a "request" field + // Here we set the "request" field and remove "requests" + if widgetDef["requests"] != nil { + widgetDefRequests := widgetDef["requests"].([]interface{}) + for i, widgetDefRequest := range widgetDefRequests { + widgetDefRequestNormalized := widgetDefRequest.(map[string]interface{}) + if widgetDefRequestNormalized["limit"] != nil { + widgetDefRequestNormalized["limit"] = int(widgetDefRequestNormalized["limit"].(float64)) + } + widgetDefRequests[i] = widgetDefRequestNormalized + } + widgetDef["request"] = widgetDefRequests + delete(widgetDef, "requests") + } + // TF -> json conversion processes precision as float64, it needs to be converted to + // an int value to be saved successfully + if widgetDef["precision"] != nil { + widgetDef["precision"] = int(widgetDef["precision"].(float64)) + } + return widgetDef +} + func dashboardWidgetsToPpkWidgets(terraformWidgets *[]map[string]interface{}) ([]datadogV2.PowerpackInnerWidgets, diag.Diagnostics) { var diags diag.Diagnostics @@ -351,34 +396,14 @@ func dashboardWidgetsToPpkWidgets(terraformWidgets *[]map[string]interface{}) ([ widgetLayout = datadogV2.NewPowerpackInnerWidgetLayout(height, width, x, y) } else { widgetDef = terraformDefinition.([]map[string]interface{})[0] - // Dashboard widgets set live span at the widget level, we must prevent that for powerpack widgets - // where live span is set at the resource level. - if widgetDef["live_span"] != nil { - diags = append(diags, diag.Diagnostic{ - Severity: diag.Error, - Summary: fmt.Sprintf("live_span must be set at the powerpack level and will be applied to all widgets"), - }) - return nil, diags - } - - if widgetDef["request"] != nil { - // Distribution/change/heatmap widgets have a "requests" field, while API Spec has a "request" field - // Here we set the "requests" field and remove "request" - widgetDefRequests := *widgetDef["request"].(*[]map[string]interface{}) - widgetDef["requests"] = widgetDefRequests - delete(widgetDef, "request") - } - if widgetDef["custom_link"] != nil { - // Some widgets have a "custom_links" field, while API Spec has a "custom_link" field - // Here we set the "custom_links" field and remove "custom_link" - widgetDefCustomLinks := *widgetDef["custom_link"].(*[]map[string]interface{}) - widgetDef["custom_links"] = widgetDefCustomLinks - delete(widgetDef, "custom_link") - } // The type in the dictionary is in the format _definition, where can contain // a type with multiple underscores. To parse a valid type name, we take a substring up until the last // underscore. Ex: free_text_definition -> free_text, hostmap_definition -> hostmap widgetDef["type"] = widgetType[:strings.LastIndex(widgetType, "_")] + widgetDef, diags = normalizeDashboardWidgetDef(widgetDef) + if diags.HasError() { + return nil, diags + } } } widgetsDDItem := datadogV2.NewPowerpackInnerWidgets(widgetDef) @@ -401,35 +426,10 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) if widgetDefinition == nil { continue } + widgetDefinition = normalizeTerraformWidgetDef(widgetDefinition) // Add new powerpack-supported widgets here // We save Powerpack widgets as Dashboard widgets so we need to convert them to the appropriate widget definition object. widgetType := widgetDefinition["type"] - // Dashboard TF widgets have a "requests" field, while API Spec has a "request" field - // Here we set the "request" field and remove "requests" - if widgetDefinition["requests"] != nil { - widgetDefRequests := widgetDefinition["requests"].([]interface{}) - for i, widgetDefRequest := range widgetDefRequests { - widgetDefRequestNormalized := widgetDefRequest.(map[string]interface{}) - if widgetDefRequestNormalized["limit"] != nil { - widgetDefRequestNormalized["limit"] = int(widgetDefRequestNormalized["limit"].(float64)) - } - widgetDefRequests[i] = widgetDefRequestNormalized - } - terraformWidget.Definition["request"] = widgetDefRequests - delete(terraformWidget.Definition, "requests") - } - // Dashboard TF widgets have a "custom_links" field, while API Spec has a "custom_link" field - // Here we set the "custom_link" field and remove "custom_links" - if widgetDefinition["custom_links"] != nil { - widgetDefCustomLinks := widgetDefinition["custom_links"].([]interface{}) - terraformWidget.Definition["custom_link"] = widgetDefCustomLinks - delete(terraformWidget.Definition, "custom_links") - } - // TF -> json conversion processes precision as float64, it needs to be converted to - // an int value to be saved successfully - if widgetDefinition["precision"] != nil { - widgetDefinition["precision"] = int(widgetDefinition["precision"].(float64)) - } switch widgetType { case "alert_graph": definition = datadogV1.AlertGraphWidgetDefinitionAsWidgetDefinition(buildDatadogAlertGraphDefinition(widgetDefinition)) From 711f74ec03a0bcd61771932ab18a14e79e01466f Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Tue, 31 Oct 2023 16:18:31 -0400 Subject: [PATCH 36/48] add powerpack widget schema --- datadog/resource_datadog_powerpack.go | 292 +++++++++++++++++++++++++- 1 file changed, 291 insertions(+), 1 deletion(-) diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index 1dfca96559..82dc70ad56 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -65,7 +65,7 @@ func resourceDatadogPowerpack() *schema.Resource { Optional: true, Description: "The list of widgets to display in the powerpack.", Elem: &schema.Resource{ - Schema: getWidgetSchema(), + Schema: getPowerpackWidgetSchema(), }, }, } @@ -73,6 +73,296 @@ func resourceDatadogPowerpack() *schema.Resource { } } +func getPowerpackWidgetSchema() map[string]*schema.Schema { + return map[string]*schema.Schema{ + "widget_layout": { + Type: schema.TypeList, + MaxItems: 1, + Optional: true, + Description: "The layout of the widget on a 'free' dashboard.", + Elem: &schema.Resource{ + Schema: getWidgetLayoutSchema(), + }, + }, + "id": { + Type: schema.TypeInt, + Computed: true, + Description: "The ID of the widget.", + }, + // A widget should implement exactly one of the following definitions + "alert_graph_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Alert Graph widget.", + Elem: &schema.Resource{ + Schema: getAlertGraphDefinitionSchema(), + }, + }, + "alert_value_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Alert Value widget.", + Elem: &schema.Resource{ + Schema: getAlertValueDefinitionSchema(), + }, + }, + "change_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Change widget.", + Elem: &schema.Resource{ + Schema: getChangeDefinitionSchema(), + }, + }, + "check_status_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Check Status widget.", + Elem: &schema.Resource{ + Schema: getCheckStatusDefinitionSchema(), + }, + }, + "distribution_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Distribution widget.", + Elem: &schema.Resource{ + Schema: getDistributionDefinitionSchema(), + }, + }, + "event_stream_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Event Stream widget.", + Elem: &schema.Resource{ + Schema: getEventStreamDefinitionSchema(), + }, + }, + "event_timeline_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Event Timeline widget.", + Elem: &schema.Resource{ + Schema: getEventTimelineDefinitionSchema(), + }, + }, + "free_text_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Free Text widget.", + Elem: &schema.Resource{ + Schema: getFreeTextDefinitionSchema(), + }, + }, + "heatmap_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Heatmap widget.", + Elem: &schema.Resource{ + Schema: getHeatmapDefinitionSchema(), + }, + }, + "hostmap_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Hostmap widget.", + Elem: &schema.Resource{ + Schema: getHostmapDefinitionSchema(), + }, + }, + "iframe_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for an Iframe widget.", + Elem: &schema.Resource{ + Schema: getIframeDefinitionSchema(), + }, + }, + "image_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for an Image widget", + Elem: &schema.Resource{ + Schema: getImageDefinitionSchema(), + }, + }, + "list_stream_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a List Stream widget.", + Elem: &schema.Resource{ + Schema: getListStreamDefinitionSchema(), + }, + }, + "log_stream_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for an Log Stream widget.", + Elem: &schema.Resource{ + Schema: getLogStreamDefinitionSchema(), + }, + }, + "manage_status_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for an Manage Status widget.", + Elem: &schema.Resource{ + Schema: getManageStatusDefinitionSchema(), + }, + }, + "note_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Note widget.", + Elem: &schema.Resource{ + Schema: getNoteDefinitionSchema(), + }, + }, + "query_value_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Query Value widget.", + Elem: &schema.Resource{ + Schema: getQueryValueDefinitionSchema(), + }, + }, + "query_table_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Query Table widget.", + Elem: &schema.Resource{ + Schema: getQueryTableDefinitionSchema(), + }, + }, + "scatterplot_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Scatterplot widget.", + Elem: &schema.Resource{ + Schema: getScatterplotDefinitionSchema(), + }, + }, + "servicemap_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Service Map widget.", + Elem: &schema.Resource{ + Schema: getServiceMapDefinitionSchema(), + }, + }, + "service_level_objective_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Service Level Objective widget.", + Elem: &schema.Resource{ + Schema: getServiceLevelObjectiveDefinitionSchema(), + }, + }, + "slo_list_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for an SLO (Service Level Objective) List widget.", + Elem: &schema.Resource{ + Schema: getSloListDefinitionSchema(), + }, + }, + "sunburst_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Sunburst widget.", + Elem: &schema.Resource{ + Schema: getSunburstDefinitionschema(), + }, + }, + "timeseries_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Timeseries widget.", + Elem: &schema.Resource{ + Schema: getTimeseriesDefinitionSchema(), + }, + }, + "toplist_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Toplist widget.", + Elem: &schema.Resource{ + Schema: getToplistDefinitionSchema(), + }, + }, + "topology_map_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Topology Map widget.", + Elem: &schema.Resource{ + Schema: getTopologyMapDefinitionSchema(), + }, + }, + "trace_service_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Trace Service widget.", + Elem: &schema.Resource{ + Schema: getTraceServiceDefinitionSchema(), + }, + }, + "treemap_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Treemap widget.", + Elem: &schema.Resource{ + Schema: getTreemapDefinitionSchema(), + }, + }, + "geomap_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Geomap widget.", + Elem: &schema.Resource{ + Schema: getGeomapDefinitionSchema(), + }, + }, + "run_workflow_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Run Workflow widget.", + Elem: &schema.Resource{ + Schema: getRunWorkflowDefinitionSchema(), + }, + }, + } +} + func buildPowerpackTemplateVariables(terraformTemplateVariables []interface{}) *[]datadogV2.PowerpackTemplateVariable { ppkTemplateVariables := make([]datadogV2.PowerpackTemplateVariable, len(terraformTemplateVariables)) for i, ttv := range terraformTemplateVariables { From 81a4e8796c87d0d357fa2e04c6b6a8c4eed81a64 Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Tue, 31 Oct 2023 16:21:16 -0400 Subject: [PATCH 37/48] update docs --- docs/resources/powerpack.md | 20526 ++-------------------------------- 1 file changed, 1220 insertions(+), 19306 deletions(-) diff --git a/docs/resources/powerpack.md b/docs/resources/powerpack.md index 58045b588e..bc52d8b9c7 100644 --- a/docs/resources/powerpack.md +++ b/docs/resources/powerpack.md @@ -54,7 +54,6 @@ Optional: - `event_timeline_definition` (Block List, Max: 1) The definition for a Event Timeline widget. (see [below for nested schema](#nestedblock--widget--event_timeline_definition)) - `free_text_definition` (Block List, Max: 1) The definition for a Free Text widget. (see [below for nested schema](#nestedblock--widget--free_text_definition)) - `geomap_definition` (Block List, Max: 1) The definition for a Geomap widget. (see [below for nested schema](#nestedblock--widget--geomap_definition)) -- `group_definition` (Block List, Max: 1) The definition for a Group widget. (see [below for nested schema](#nestedblock--widget--group_definition)) - `heatmap_definition` (Block List, Max: 1) The definition for a Heatmap widget. (see [below for nested schema](#nestedblock--widget--heatmap_definition)) - `hostmap_definition` (Block List, Max: 1) The definition for a Hostmap widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition)) - `iframe_definition` (Block List, Max: 1) The definition for an Iframe widget. (see [below for nested schema](#nestedblock--widget--iframe_definition)) @@ -70,7 +69,6 @@ Optional: - `service_level_objective_definition` (Block List, Max: 1) The definition for a Service Level Objective widget. (see [below for nested schema](#nestedblock--widget--service_level_objective_definition)) - `servicemap_definition` (Block List, Max: 1) The definition for a Service Map widget. (see [below for nested schema](#nestedblock--widget--servicemap_definition)) - `slo_list_definition` (Block List, Max: 1) The definition for an SLO (Service Level Objective) List widget. (see [below for nested schema](#nestedblock--widget--slo_list_definition)) -- `split_graph_definition` (Block List, Max: 1) The definition for a Split Graph widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition)) - `sunburst_definition` (Block List, Max: 1) The definition for a Sunburst widget. (see [below for nested schema](#nestedblock--widget--sunburst_definition)) - `timeseries_definition` (Block List, Max: 1) The definition for a Timeseries widget. (see [below for nested schema](#nestedblock--widget--timeseries_definition)) - `toplist_definition` (Block List, Max: 1) The definition for a Toplist widget. (see [below for nested schema](#nestedblock--widget--toplist_definition)) @@ -1461,141 +1459,62 @@ Required: - -### Nested Schema for `widget.group_definition` - -Required: - -- `layout_type` (String) The layout type of the group. Valid values are `ordered`. - -Optional: - -- `background_color` (String) The background color of the group title, options: `vivid_blue`, `vivid_purple`, `vivid_pink`, `vivid_orange`, `vivid_yellow`, `vivid_green`, `blue`, `purple`, `pink`, `orange`, `yellow`, `green`, `gray` or `white` -- `banner_img` (String) The image URL to display as a banner for the group. -- `show_title` (Boolean) Whether to show the title or not. Defaults to `true`. -- `title` (String) The title of the group. -- `widget` (Block List) The list of widgets in this group. (see [below for nested schema](#nestedblock--widget--group_definition--widget)) - - -### Nested Schema for `widget.group_definition.widget` - -Optional: - -- `alert_graph_definition` (Block List, Max: 1) The definition for a Alert Graph widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--alert_graph_definition)) -- `alert_value_definition` (Block List, Max: 1) The definition for a Alert Value widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--alert_value_definition)) -- `change_definition` (Block List, Max: 1) The definition for a Change widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition)) -- `check_status_definition` (Block List, Max: 1) The definition for a Check Status widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--check_status_definition)) -- `distribution_definition` (Block List, Max: 1) The definition for a Distribution widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition)) -- `event_stream_definition` (Block List, Max: 1) The definition for a Event Stream widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--event_stream_definition)) -- `event_timeline_definition` (Block List, Max: 1) The definition for a Event Timeline widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--event_timeline_definition)) -- `free_text_definition` (Block List, Max: 1) The definition for a Free Text widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--free_text_definition)) -- `geomap_definition` (Block List, Max: 1) The definition for a Geomap widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition)) -- `heatmap_definition` (Block List, Max: 1) The definition for a Heatmap widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition)) -- `hostmap_definition` (Block List, Max: 1) The definition for a Hostmap widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition)) -- `iframe_definition` (Block List, Max: 1) The definition for an Iframe widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--iframe_definition)) -- `image_definition` (Block List, Max: 1) The definition for an Image widget (see [below for nested schema](#nestedblock--widget--group_definition--widget--image_definition)) -- `list_stream_definition` (Block List, Max: 1) The definition for a List Stream widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--list_stream_definition)) -- `log_stream_definition` (Block List, Max: 1) The definition for an Log Stream widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--log_stream_definition)) -- `manage_status_definition` (Block List, Max: 1) The definition for an Manage Status widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--manage_status_definition)) -- `note_definition` (Block List, Max: 1) The definition for a Note widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--note_definition)) -- `query_table_definition` (Block List, Max: 1) The definition for a Query Table widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition)) -- `query_value_definition` (Block List, Max: 1) The definition for a Query Value widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition)) -- `run_workflow_definition` (Block List, Max: 1) The definition for a Run Workflow widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--run_workflow_definition)) -- `scatterplot_definition` (Block List, Max: 1) The definition for a Scatterplot widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition)) -- `service_level_objective_definition` (Block List, Max: 1) The definition for a Service Level Objective widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--service_level_objective_definition)) -- `servicemap_definition` (Block List, Max: 1) The definition for a Service Map widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--servicemap_definition)) -- `slo_list_definition` (Block List, Max: 1) The definition for an SLO (Service Level Objective) List widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--slo_list_definition)) -- `split_graph_definition` (Block List, Max: 1) The definition for a Split Graph widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition)) -- `sunburst_definition` (Block List, Max: 1) The definition for a Sunburst widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition)) -- `timeseries_definition` (Block List, Max: 1) The definition for a Timeseries widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition)) -- `toplist_definition` (Block List, Max: 1) The definition for a Toplist widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition)) -- `topology_map_definition` (Block List, Max: 1) The definition for a Topology Map widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--topology_map_definition)) -- `trace_service_definition` (Block List, Max: 1) The definition for a Trace Service widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--trace_service_definition)) -- `treemap_definition` (Block List, Max: 1) The definition for a Treemap widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition)) -- `widget_layout` (Block List, Max: 1) The layout of the widget on a 'free' dashboard. (see [below for nested schema](#nestedblock--widget--group_definition--widget--widget_layout)) - -Read-Only: - -- `id` (Number) The ID of the widget. - - -### Nested Schema for `widget.group_definition.widget.alert_graph_definition` - -Required: - -- `alert_id` (String) The ID of the monitor used by the widget. -- `viz_type` (String) Type of visualization to use when displaying the widget. Valid values are `timeseries`, `toplist`. + +### Nested Schema for `widget.heatmap_definition` Optional: +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--custom_link)) +- `event` (Block List) The definition of the event to overlay on the graph. Multiple `event` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--event)) +- `legend_size` (String) The size of the legend displayed in the widget. - `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the request block). (see [below for nested schema](#nestedblock--widget--heatmap_definition--request)) +- `show_legend` (Boolean) Whether or not to show the legend on this widget. - `title` (String) The title of the widget. - `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. - `title_size` (String) The size of the widget's title (defaults to 16). +- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--yaxis)) - - -### Nested Schema for `widget.group_definition.widget.alert_value_definition` - -Required: - -- `alert_id` (String) The ID of the monitor used by the widget. + +### Nested Schema for `widget.heatmap_definition.custom_link` Optional: -- `precision` (Number) The precision to use when displaying the value. Use `*` for maximum precision. -- `text_align` (String) The alignment of the text in the widget. Valid values are `center`, `left`, `right`. -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). -- `unit` (String) The unit for the value displayed in the widget. - +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - -### Nested Schema for `widget.group_definition.widget.change_definition` -Optional: + +### Nested Schema for `widget.heatmap_definition.event` -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--custom_link)) -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple request blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the request block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). +Required: - -### Nested Schema for `widget.group_definition.widget.change_definition.custom_link` +- `q` (String) The event query to use in the widget. Optional: -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. +- `tags_execution` (String) The execution method for multi-value filters. - -### Nested Schema for `widget.group_definition.widget.change_definition.request` + +### Nested Schema for `widget.heatmap_definition.request` Optional: -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--apm_query)) -- `change_type` (String) Whether to show absolute or relative change. Valid values are `absolute`, `relative`. -- `compare_to` (String) Choose from when to compare current data to. Valid values are `hour_before`, `day_before`, `week_before`, `month_before`. -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--formula)) -- `increase_good` (Boolean) A Boolean indicating whether an increase in the value is good (displayed in green) or not (displayed in red). -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--log_query)) -- `order_by` (String) What to order by. Valid values are `change`, `name`, `present`, `past`. -- `order_dir` (String) Widget sorting method. Valid values are `asc`, `desc`. -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--process_query)) +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--apm_query)) +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--formula)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--process_query)) - `q` (String) The metric query to use for this widget. -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--query)) -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--security_query)) -- `show_present` (Boolean) If set to `true`, displays the current value. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--security_query)) +- `style` (Block List, Max: 1) The style of the widget graph. One nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--style)) - -### Nested Schema for `widget.group_definition.widget.change_definition.request.apm_query` + +### Nested Schema for `widget.heatmap_definition.request.apm_query` Required: @@ -1603,13 +1522,13 @@ Required: Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--apm_query--multi_compute)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--apm_query--multi_compute)) - `search_query` (String) The search query to use. - -### Nested Schema for `widget.group_definition.widget.change_definition.request.apm_query.compute_query` + +### Nested Schema for `widget.heatmap_definition.request.apm_query.compute_query` Required: @@ -1621,17 +1540,17 @@ Optional: - `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.group_definition.widget.change_definition.request.apm_query.group_by` + +### Nested Schema for `widget.heatmap_definition.request.apm_query.group_by` Optional: - `facet` (String) The facet name. - `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--apm_query--group_by--sort_query)) +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--apm_query--group_by--sort_query)) - -### Nested Schema for `widget.group_definition.widget.change_definition.request.apm_query.group_by.sort_query` + +### Nested Schema for `widget.heatmap_definition.request.apm_query.group_by.sort_query` Required: @@ -1644,8 +1563,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.change_definition.request.apm_query.multi_compute` + +### Nested Schema for `widget.heatmap_definition.request.apm_query.multi_compute` Required: @@ -1658,8 +1577,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.change_definition.request.formula` + +### Nested Schema for `widget.heatmap_definition.request.formula` Required: @@ -1669,12 +1588,12 @@ Optional: - `alias` (String) An expression alias. - `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--formula--conditional_formats)) -- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--formula--limit)) -- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--formula--style)) +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--formula--style)) - -### Nested Schema for `widget.group_definition.widget.change_definition.request.formula.conditional_formats` + +### Nested Schema for `widget.heatmap_definition.request.formula.conditional_formats` Required: @@ -1692,8 +1611,8 @@ Optional: - `timeframe` (String) Defines the displayed timeframe. - -### Nested Schema for `widget.group_definition.widget.change_definition.request.formula.limit` + +### Nested Schema for `widget.heatmap_definition.request.formula.limit` Optional: @@ -1701,8 +1620,8 @@ Optional: - `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. - -### Nested Schema for `widget.group_definition.widget.change_definition.request.formula.style` + +### Nested Schema for `widget.heatmap_definition.request.formula.style` Optional: @@ -1711,8 +1630,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.change_definition.request.log_query` + +### Nested Schema for `widget.heatmap_definition.request.log_query` Required: @@ -1720,13 +1639,13 @@ Required: Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--log_query--multi_compute)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--log_query--multi_compute)) - `search_query` (String) The search query to use. - -### Nested Schema for `widget.group_definition.widget.change_definition.request.log_query.compute_query` + +### Nested Schema for `widget.heatmap_definition.request.log_query.compute_query` Required: @@ -1738,17 +1657,17 @@ Optional: - `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.group_definition.widget.change_definition.request.log_query.group_by` + +### Nested Schema for `widget.heatmap_definition.request.log_query.group_by` Optional: - `facet` (String) The facet name. - `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--log_query--group_by--sort_query)) +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--log_query--group_by--sort_query)) - -### Nested Schema for `widget.group_definition.widget.change_definition.request.log_query.group_by.sort_query` + +### Nested Schema for `widget.heatmap_definition.request.log_query.group_by.sort_query` Required: @@ -1761,8 +1680,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.change_definition.request.log_query.multi_compute` + +### Nested Schema for `widget.heatmap_definition.request.log_query.multi_compute` Required: @@ -1775,8 +1694,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.change_definition.request.process_query` + +### Nested Schema for `widget.heatmap_definition.request.process_query` Required: @@ -1789,20 +1708,20 @@ Optional: - `search_by` (String) Your chosen search term. - -### Nested Schema for `widget.group_definition.widget.change_definition.request.query` + +### Nested Schema for `widget.heatmap_definition.request.query` Optional: -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--query--slo_query)) +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--slo_query)) - -### Nested Schema for `widget.group_definition.widget.change_definition.request.query.apm_dependency_stats_query` + +### Nested Schema for `widget.heatmap_definition.request.query.apm_dependency_stats_query` Required: @@ -1821,8 +1740,8 @@ Optional: - `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - -### Nested Schema for `widget.group_definition.widget.change_definition.request.query.apm_resource_stats_query` + +### Nested Schema for `widget.heatmap_definition.request.query.apm_resource_stats_query` Required: @@ -1841,24 +1760,24 @@ Optional: - `resource_name` (String) APM resource. - -### Nested Schema for `widget.group_definition.widget.change_definition.request.query.event_query` + +### Nested Schema for `widget.heatmap_definition.request.query.event_query` Required: -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--query--event_query--compute)) +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--event_query--compute)) - `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. - `name` (String) The name of query for use in formulas. Optional: -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--query--event_query--group_by)) +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--event_query--group_by)) - `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--query--event_query--search)) +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--event_query--search)) - `storage` (String) Storage location (private beta). - -### Nested Schema for `widget.group_definition.widget.change_definition.request.query.event_query.compute` + +### Nested Schema for `widget.heatmap_definition.request.query.event_query.compute` Required: @@ -1870,8 +1789,8 @@ Optional: - `metric` (String) The measurable attribute to compute. - -### Nested Schema for `widget.group_definition.widget.change_definition.request.query.event_query.group_by` + +### Nested Schema for `widget.heatmap_definition.request.query.event_query.group_by` Required: @@ -1880,10 +1799,10 @@ Required: Optional: - `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--query--event_query--group_by--sort)) +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--event_query--group_by--sort)) - -### Nested Schema for `widget.group_definition.widget.change_definition.request.query.event_query.group_by.sort` + +### Nested Schema for `widget.heatmap_definition.request.query.event_query.group_by.sort` Required: @@ -1896,8 +1815,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.change_definition.request.query.event_query.search` + +### Nested Schema for `widget.heatmap_definition.request.query.event_query.search` Required: @@ -1905,8 +1824,8 @@ Required: - -### Nested Schema for `widget.group_definition.widget.change_definition.request.query.metric_query` + +### Nested Schema for `widget.heatmap_definition.request.query.metric_query` Required: @@ -1919,8 +1838,8 @@ Optional: - `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - -### Nested Schema for `widget.group_definition.widget.change_definition.request.query.process_query` + +### Nested Schema for `widget.heatmap_definition.request.query.process_query` Required: @@ -1938,8 +1857,8 @@ Optional: - `text_filter` (String) The text to use as a filter. - -### Nested Schema for `widget.group_definition.widget.change_definition.request.query.slo_query` + +### Nested Schema for `widget.heatmap_definition.request.query.slo_query` Required: @@ -1956,8 +1875,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.change_definition.request.rum_query` + +### Nested Schema for `widget.heatmap_definition.request.rum_query` Required: @@ -1965,13 +1884,13 @@ Required: Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--rum_query--multi_compute)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--rum_query--multi_compute)) - `search_query` (String) The search query to use. - -### Nested Schema for `widget.group_definition.widget.change_definition.request.rum_query.compute_query` + +### Nested Schema for `widget.heatmap_definition.request.rum_query.compute_query` Required: @@ -1983,17 +1902,17 @@ Optional: - `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.group_definition.widget.change_definition.request.rum_query.group_by` + +### Nested Schema for `widget.heatmap_definition.request.rum_query.group_by` Optional: - `facet` (String) The facet name. - `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--rum_query--group_by--sort_query)) +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--rum_query--group_by--sort_query)) - -### Nested Schema for `widget.group_definition.widget.change_definition.request.rum_query.group_by.sort_query` + +### Nested Schema for `widget.heatmap_definition.request.rum_query.group_by.sort_query` Required: @@ -2006,8 +1925,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.change_definition.request.rum_query.multi_compute` + +### Nested Schema for `widget.heatmap_definition.request.rum_query.multi_compute` Required: @@ -2020,8 +1939,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.change_definition.request.security_query` + +### Nested Schema for `widget.heatmap_definition.request.security_query` Required: @@ -2029,13 +1948,13 @@ Required: Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--security_query--multi_compute)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--security_query--multi_compute)) - `search_query` (String) The search query to use. - -### Nested Schema for `widget.group_definition.widget.change_definition.request.security_query.compute_query` + +### Nested Schema for `widget.heatmap_definition.request.security_query.compute_query` Required: @@ -2047,17 +1966,17 @@ Optional: - `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.group_definition.widget.change_definition.request.security_query.group_by` + +### Nested Schema for `widget.heatmap_definition.request.security_query.group_by` Optional: - `facet` (String) The facet name. - `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--change_definition--request--security_query--group_by--sort_query)) +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--security_query--group_by--sort_query)) - -### Nested Schema for `widget.group_definition.widget.change_definition.request.security_query.group_by.sort_query` + +### Nested Schema for `widget.heatmap_definition.request.security_query.group_by.sort_query` Required: @@ -2070,8 +1989,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.change_definition.request.security_query.multi_compute` + +### Nested Schema for `widget.heatmap_definition.request.security_query.multi_compute` Required: @@ -2084,56 +2003,78 @@ Optional: + +### Nested Schema for `widget.heatmap_definition.request.style` +Optional: - -### Nested Schema for `widget.group_definition.widget.check_status_definition` +- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. -Required: -- `check` (String) The check to use in the widget. -- `grouping` (String) The kind of grouping to use. Valid values are `check`, `cluster`. + + +### Nested Schema for `widget.heatmap_definition.yaxis` Optional: -- `group` (String) The check group to use in the widget. -- `group_by` (List of String) When `grouping = "cluster"`, indicates a list of tags to use for grouping. -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `tags` (List of String) A list of tags to use in the widget. -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). +- `include_zero` (Boolean) Always include zero or fit the axis to the data range. +- `label` (String) The label of the axis to display on the graph. +- `max` (String) Specify the maximum value to show on the Y-axis. +- `min` (String) Specify the minimum value to show on the Y-axis. +- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + - -### Nested Schema for `widget.group_definition.widget.distribution_definition` + +### Nested Schema for `widget.hostmap_definition` Optional: -- `legend_size` (String) The size of the legend displayed in the widget. -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple request blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the request block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request)) -- `show_legend` (Boolean) Whether or not to show the legend on this widget. +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--custom_link)) +- `group` (List of String) The list of tags to group nodes by. +- `no_group_hosts` (Boolean) A Boolean indicating whether to show ungrouped nodes. +- `no_metric_hosts` (Boolean) A Boolean indicating whether to show nodes with no metrics. +- `node_type` (String) The type of node used. Valid values are `host`, `container`. +- `request` (Block List, Max: 1) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request)) +- `scope` (List of String) The list of tags to filter nodes by. +- `style` (Block List, Max: 1) The style of the widget graph. One nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--style)) - `title` (String) The title of the widget. - `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. - `title_size` (String) The size of the widget's title (defaults to 16). - -### Nested Schema for `widget.group_definition.widget.distribution_definition.request` + +### Nested Schema for `widget.hostmap_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.hostmap_definition.request` + +Optional: + +- `fill` (Block List) The query used to fill the map. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the request block). (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill)) +- `size` (Block List) The query used to size the map. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the request block). (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size)) + + +### Nested Schema for `widget.hostmap_definition.request.fill` Optional: -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--apm_query)) -- `apm_stats_query` (Block List, Max: 1) (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--apm_stats_query)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--log_query)) -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--process_query)) +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--apm_query)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--process_query)) - `q` (String) The metric query to use for this widget. -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--security_query)) -- `style` (Block List, Max: 1) The style of the widget graph. One nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--style)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--security_query)) - -### Nested Schema for `widget.group_definition.widget.distribution_definition.request.apm_query` + +### Nested Schema for `widget.hostmap_definition.request.fill.apm_query` Required: @@ -2141,13 +2082,13 @@ Required: Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--apm_query--multi_compute)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--apm_query--multi_compute)) - `search_query` (String) The search query to use. - -### Nested Schema for `widget.group_definition.widget.distribution_definition.request.apm_query.compute_query` + +### Nested Schema for `widget.hostmap_definition.request.fill.apm_query.compute_query` Required: @@ -2159,17 +2100,17 @@ Optional: - `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.group_definition.widget.distribution_definition.request.apm_query.group_by` + +### Nested Schema for `widget.hostmap_definition.request.fill.apm_query.group_by` Optional: - `facet` (String) The facet name. - `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--apm_query--group_by--sort_query)) +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--apm_query--group_by--sort_query)) - -### Nested Schema for `widget.group_definition.widget.distribution_definition.request.apm_query.group_by.sort_query` + +### Nested Schema for `widget.hostmap_definition.request.fill.apm_query.group_by.sort_query` Required: @@ -2182,8 +2123,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.distribution_definition.request.apm_query.multi_compute` + +### Nested Schema for `widget.hostmap_definition.request.fill.apm_query.multi_compute` Required: @@ -2196,39 +2137,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.distribution_definition.request.apm_stats_query` - -Required: - -- `env` (String) The environment name. -- `name` (String) The operation name associated with the service. -- `primary_tag` (String) The organization's host group name and value. -- `row_type` (String) The level of detail for the request. Valid values are `service`, `resource`, `span`. -- `service` (String) The service name. - -Optional: - -- `columns` (Block List) Column properties used by the front end for display. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--apm_stats_query--columns)) -- `resource` (String) The resource name. - - -### Nested Schema for `widget.group_definition.widget.distribution_definition.request.apm_stats_query.columns` - -Required: - -- `name` (String) The column name. - -Optional: - -- `alias` (String) A user-assigned alias for the column. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.group_definition.widget.distribution_definition.request.log_query` + +### Nested Schema for `widget.hostmap_definition.request.fill.log_query` Required: @@ -2236,13 +2146,13 @@ Required: Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--log_query--multi_compute)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--log_query--multi_compute)) - `search_query` (String) The search query to use. - -### Nested Schema for `widget.group_definition.widget.distribution_definition.request.log_query.compute_query` + +### Nested Schema for `widget.hostmap_definition.request.fill.log_query.compute_query` Required: @@ -2254,17 +2164,17 @@ Optional: - `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.group_definition.widget.distribution_definition.request.log_query.group_by` + +### Nested Schema for `widget.hostmap_definition.request.fill.log_query.group_by` Optional: - `facet` (String) The facet name. - `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--log_query--group_by--sort_query)) +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--log_query--group_by--sort_query)) - -### Nested Schema for `widget.group_definition.widget.distribution_definition.request.log_query.group_by.sort_query` + +### Nested Schema for `widget.hostmap_definition.request.fill.log_query.group_by.sort_query` Required: @@ -2277,8 +2187,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.distribution_definition.request.log_query.multi_compute` + +### Nested Schema for `widget.hostmap_definition.request.fill.log_query.multi_compute` Required: @@ -2291,8 +2201,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.distribution_definition.request.process_query` + +### Nested Schema for `widget.hostmap_definition.request.fill.process_query` Required: @@ -2305,8 +2215,8 @@ Optional: - `search_by` (String) Your chosen search term. - -### Nested Schema for `widget.group_definition.widget.distribution_definition.request.rum_query` + +### Nested Schema for `widget.hostmap_definition.request.fill.rum_query` Required: @@ -2314,13 +2224,13 @@ Required: Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--rum_query--multi_compute)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--rum_query--multi_compute)) - `search_query` (String) The search query to use. - -### Nested Schema for `widget.group_definition.widget.distribution_definition.request.rum_query.compute_query` + +### Nested Schema for `widget.hostmap_definition.request.fill.rum_query.compute_query` Required: @@ -2332,17 +2242,17 @@ Optional: - `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.group_definition.widget.distribution_definition.request.rum_query.group_by` + +### Nested Schema for `widget.hostmap_definition.request.fill.rum_query.group_by` Optional: - `facet` (String) The facet name. - `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--rum_query--group_by--sort_query)) +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--rum_query--group_by--sort_query)) - -### Nested Schema for `widget.group_definition.widget.distribution_definition.request.rum_query.group_by.sort_query` + +### Nested Schema for `widget.hostmap_definition.request.fill.rum_query.group_by.sort_query` Required: @@ -2355,8 +2265,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.distribution_definition.request.rum_query.multi_compute` + +### Nested Schema for `widget.hostmap_definition.request.fill.rum_query.multi_compute` Required: @@ -2369,8 +2279,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.distribution_definition.request.security_query` + +### Nested Schema for `widget.hostmap_definition.request.fill.security_query` Required: @@ -2378,13 +2288,13 @@ Required: Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--security_query--multi_compute)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--security_query--multi_compute)) - `search_query` (String) The search query to use. - -### Nested Schema for `widget.group_definition.widget.distribution_definition.request.security_query.compute_query` + +### Nested Schema for `widget.hostmap_definition.request.fill.security_query.compute_query` Required: @@ -2396,17 +2306,17 @@ Optional: - `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.group_definition.widget.distribution_definition.request.security_query.group_by` + +### Nested Schema for `widget.hostmap_definition.request.fill.security_query.group_by` Optional: - `facet` (String) The facet name. - `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--distribution_definition--request--security_query--group_by--sort_query)) +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--security_query--group_by--sort_query)) - -### Nested Schema for `widget.group_definition.widget.distribution_definition.request.security_query.group_by.sort_query` + +### Nested Schema for `widget.hostmap_definition.request.fill.security_query.group_by.sort_query` Required: @@ -2419,8 +2329,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.distribution_definition.request.security_query.multi_compute` + +### Nested Schema for `widget.hostmap_definition.request.fill.security_query.multi_compute` Required: @@ -2433,165 +2343,163 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.distribution_definition.request.style` + + +### Nested Schema for `widget.hostmap_definition.request.size` Optional: -- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--apm_query)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--process_query)) +- `q` (String) The metric query to use for this widget. +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--security_query)) + + +### Nested Schema for `widget.hostmap_definition.request.size.apm_query` +Required: + +- `index` (String) The name of the index to query. +Optional: +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--apm_query--multi_compute)) +- `search_query` (String) The search query to use. - -### Nested Schema for `widget.group_definition.widget.event_stream_definition` + +### Nested Schema for `widget.hostmap_definition.request.size.apm_query.compute_query` Required: -- `query` (String) The query to use in the widget. +- `aggregation` (String) The aggregation method. Optional: -- `event_size` (String) The size to use to display an event. Valid values are `s`, `l`. -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `tags_execution` (String) The execution method for multi-value filters, options: `and` or `or`. -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.hostmap_definition.request.size.apm_query.group_by` +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--apm_query--group_by--sort_query)) - -### Nested Schema for `widget.group_definition.widget.event_timeline_definition` + +### Nested Schema for `widget.hostmap_definition.request.size.apm_query.group_by.sort_query` Required: -- `query` (String) The query to use in the widget. +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. Optional: -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `tags_execution` (String) The execution method for multi-value filters, options: `and` or `or`. -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). +- `facet` (String) The facet name. - -### Nested Schema for `widget.group_definition.widget.free_text_definition` + + +### Nested Schema for `widget.hostmap_definition.request.size.apm_query.multi_compute` Required: -- `text` (String) The text to display in the widget. +- `aggregation` (String) The aggregation method. Optional: -- `color` (String) The color of the text in the widget. -- `font_size` (String) The size of the text in the widget. -- `text_align` (String) The alignment of the text in the widget. Valid values are `center`, `left`, `right`. +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.group_definition.widget.geomap_definition` + + +### Nested Schema for `widget.hostmap_definition.request.size.log_query` Required: -- `view` (Block List, Min: 1, Max: 1) The view of the world that the map should render. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--view)) +- `index` (String) The name of the index to query. Optional: -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--custom_link)) -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `log_query` or `rum_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request)) -- `style` (Block List, Max: 1) The style of the widget graph. One nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--style)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--log_query--multi_compute)) +- `search_query` (String) The search query to use. - -### Nested Schema for `widget.group_definition.widget.geomap_definition.view` + +### Nested Schema for `widget.hostmap_definition.request.size.log_query.compute_query` Required: -- `focus` (String) The two-letter ISO code of a country to focus the map on (or `WORLD`). - - - -### Nested Schema for `widget.group_definition.widget.geomap_definition.custom_link` +- `aggregation` (String) The aggregation method. Optional: -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.group_definition.widget.geomap_definition.request` + +### Nested Schema for `widget.hostmap_definition.request.size.log_query.group_by` Optional: -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--formula)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--log_query)) -- `q` (String) The metric query to use for this widget. -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--query)) -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--rum_query)) +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--log_query--group_by--sort_query)) - -### Nested Schema for `widget.group_definition.widget.geomap_definition.request.formula` + +### Nested Schema for `widget.hostmap_definition.request.size.log_query.group_by.sort_query` Required: -- `formula_expression` (String) A string expression built from queries, formulas, and functions. +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. Optional: -- `alias` (String) An expression alias. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--formula--conditional_formats)) -- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--formula--limit)) -- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--formula--style)) +- `facet` (String) The facet name. - -### Nested Schema for `widget.group_definition.widget.geomap_definition.request.formula.conditional_formats` + + + +### Nested Schema for `widget.hostmap_definition.request.size.log_query.multi_compute` Required: -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. +- `aggregation` (String) The aggregation method. Optional: -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.group_definition.widget.geomap_definition.request.formula.limit` -Optional: -- `count` (Number) The number of results to return. -- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + +### Nested Schema for `widget.hostmap_definition.request.size.process_query` +Required: - -### Nested Schema for `widget.group_definition.widget.geomap_definition.request.formula.style` +- `metric` (String) Your chosen metric. Optional: -- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. -- `palette_index` (Number) Index specifying which color to use within the palette. - +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. - -### Nested Schema for `widget.group_definition.widget.geomap_definition.request.log_query` + +### Nested Schema for `widget.hostmap_definition.request.size.rum_query` Required: @@ -2599,13 +2507,13 @@ Required: Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--log_query--multi_compute)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--rum_query--multi_compute)) - `search_query` (String) The search query to use. - -### Nested Schema for `widget.group_definition.widget.geomap_definition.request.log_query.compute_query` + +### Nested Schema for `widget.hostmap_definition.request.size.rum_query.compute_query` Required: @@ -2617,17 +2525,17 @@ Optional: - `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.group_definition.widget.geomap_definition.request.log_query.group_by` + +### Nested Schema for `widget.hostmap_definition.request.size.rum_query.group_by` Optional: - `facet` (String) The facet name. - `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--log_query--group_by--sort_query)) +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--rum_query--group_by--sort_query)) - -### Nested Schema for `widget.group_definition.widget.geomap_definition.request.log_query.group_by.sort_query` + +### Nested Schema for `widget.hostmap_definition.request.size.rum_query.group_by.sort_query` Required: @@ -2640,8 +2548,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.geomap_definition.request.log_query.multi_compute` + +### Nested Schema for `widget.hostmap_definition.request.size.rum_query.multi_compute` Required: @@ -2654,266 +2562,250 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.geomap_definition.request.query` - -Optional: - -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--query--slo_query)) - - -### Nested Schema for `widget.group_definition.widget.geomap_definition.request.query.apm_dependency_stats_query` + +### Nested Schema for `widget.hostmap_definition.request.size.security_query` Required: -- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `operation_name` (String) Name of operation on service. -- `resource_name` (String) APM resource. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. +- `index` (String) The name of the index to query. Optional: -- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--security_query--multi_compute)) +- `search_query` (String) The search query to use. - -### Nested Schema for `widget.group_definition.widget.geomap_definition.request.query.apm_resource_stats_query` + +### Nested Schema for `widget.hostmap_definition.request.size.security_query.compute_query` Required: -- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. +- `aggregation` (String) The aggregation method. Optional: -- `group_by` (List of String) Array of fields to group results by. -- `operation_name` (String) Name of operation on service. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. -- `resource_name` (String) APM resource. - - - -### Nested Schema for `widget.group_definition.widget.geomap_definition.request.query.event_query` +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. -Required: -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--query--event_query--compute)) -- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. -- `name` (String) The name of query for use in formulas. + +### Nested Schema for `widget.hostmap_definition.request.size.security_query.group_by` Optional: -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--query--event_query--group_by)) -- `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--query--event_query--search)) -- `storage` (String) Storage location (private beta). +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--security_query--group_by--sort_query)) - -### Nested Schema for `widget.group_definition.widget.geomap_definition.request.query.event_query.compute` + +### Nested Schema for `widget.hostmap_definition.request.size.security_query.group_by.sort_query` Required: -- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. Optional: -- `interval` (Number) A time interval in milliseconds. -- `metric` (String) The measurable attribute to compute. +- `facet` (String) The facet name. + - -### Nested Schema for `widget.group_definition.widget.geomap_definition.request.query.event_query.group_by` + +### Nested Schema for `widget.hostmap_definition.request.size.security_query.multi_compute` Required: -- `facet` (String) The event facet. +- `aggregation` (String) The aggregation method. Optional: -- `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--query--event_query--group_by--sort)) +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + - -### Nested Schema for `widget.group_definition.widget.geomap_definition.request.query.event_query.group_by.sort` -Required: -- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + + +### Nested Schema for `widget.hostmap_definition.style` Optional: -- `metric` (String) The metric used for sorting group by results. -- `order` (String) Direction of sort. Valid values are `asc`, `desc`. +- `fill_max` (String) The max value to use to color the map. +- `fill_min` (String) The min value to use to color the map. +- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. +- `palette_flip` (Boolean) A Boolean indicating whether to flip the palette tones. - -### Nested Schema for `widget.group_definition.widget.geomap_definition.request.query.event_query.search` + +### Nested Schema for `widget.iframe_definition` Required: -- `query` (String) The events search string. - +- `url` (String) The URL to use as a data source for the widget. - -### Nested Schema for `widget.group_definition.widget.geomap_definition.request.query.metric_query` + +### Nested Schema for `widget.image_definition` Required: -- `name` (String) The name of the query for use in formulas. -- `query` (String) The metrics query definition. +- `url` (String) The URL to use as a data source for the widget. Optional: -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. +- `has_background` (Boolean) Whether to display a background or not. Defaults to `true`. +- `has_border` (Boolean) Whether to display a border or not. Defaults to `true`. +- `horizontal_align` (String) The horizontal alignment for the widget. Valid values are `center`, `left`, `right`. +- `margin` (String) The margins to use around the image. Note: `small` and `large` values are deprecated. Valid values are `sm`, `md`, `lg`, `small`, `large`. +- `sizing` (String) The preferred method to adapt the dimensions of the image. The values are based on the image `object-fit` CSS properties. Note: `zoom`, `fit` and `center` values are deprecated. Valid values are `fill`, `contain`, `cover`, `none`, `scale-down`, `zoom`, `fit`, `center`. +- `url_dark_theme` (String) The URL in dark mode to use as a data source for the widget. +- `vertical_align` (String) The vertical alignment for the widget. Valid values are `center`, `top`, `bottom`. - -### Nested Schema for `widget.group_definition.widget.geomap_definition.request.query.process_query` + +### Nested Schema for `widget.list_stream_definition` Required: -- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. -- `metric` (String) The process metric name. -- `name` (String) The name of query for use in formulas. +- `request` (Block List, Min: 1) Nested block describing the requests to use when displaying the widget. Multiple `request` blocks are allowed with the structure below. (see [below for nested schema](#nestedblock--widget--list_stream_definition--request)) Optional: -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. -- `limit` (Number) The number of hits to return. -- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -- `tag_filters` (List of String) An array of tags to filter by. -- `text_filter` (String) The text to use as a filter. - +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title. Default is 16. - -### Nested Schema for `widget.group_definition.widget.geomap_definition.request.query.slo_query` + +### Nested Schema for `widget.list_stream_definition.request` Required: -- `data_source` (String) The data source for SLO queries. Valid values are `slo`. -- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. -- `slo_id` (String) ID of an SLO to query. +- `columns` (Block List, Min: 1) Widget columns. (see [below for nested schema](#nestedblock--widget--list_stream_definition--request--columns)) +- `query` (Block List, Min: 1, Max: 1) Updated list stream widget. (see [below for nested schema](#nestedblock--widget--list_stream_definition--request--query)) +- `response_format` (String) Widget response format. Valid values are `event_list`. -Optional: + +### Nested Schema for `widget.list_stream_definition.request.columns` -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. -- `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. +Required: +- `field` (String) Widget column field. +- `width` (String) Widget column width. Valid values are `auto`, `compact`, `full`. - -### Nested Schema for `widget.group_definition.widget.geomap_definition.request.rum_query` + +### Nested Schema for `widget.list_stream_definition.request.query` Required: -- `index` (String) The name of the index to query. +- `data_source` (String) Source from which to query items to display in the stream. Valid values are `logs_stream`, `audit_stream`, `ci_pipeline_stream`, `ci_test_stream`, `rum_issue_stream`, `apm_issue_stream`, `trace_stream`, `logs_issue_stream`, `logs_pattern_stream`, `logs_transaction_stream`, `event_stream`. Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--rum_query--multi_compute)) -- `search_query` (String) The search query to use. +- `event_size` (String) Size of events displayed in widget. Required if `data_source` is `event_stream`. Valid values are `s`, `l`. +- `indexes` (List of String) List of indexes. +- `query_string` (String) Widget query. +- `sort` (Block List, Max: 1) The facet and order to sort the data, for example: `{"column": "time", "order": "desc"}`. (see [below for nested schema](#nestedblock--widget--list_stream_definition--request--query--sort)) +- `storage` (String) Storage location (private beta). - -### Nested Schema for `widget.group_definition.widget.geomap_definition.request.rum_query.compute_query` + +### Nested Schema for `widget.list_stream_definition.request.query.sort` Required: -- `aggregation` (String) The aggregation method. +- `column` (String) The facet path for the column. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. -Optional: -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.group_definition.widget.geomap_definition.request.rum_query.group_by` + + +### Nested Schema for `widget.log_stream_definition` Optional: -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--geomap_definition--request--rum_query--group_by--sort_query)) +- `columns` (List of String) Stringified list of columns to use, for example: `["column1","column2","column3"]`. +- `indexes` (List of String) An array of index names to query in the stream. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `message_display` (String) The number of log lines to display. Valid values are `inline`, `expanded-md`, `expanded-lg`. +- `query` (String) The query to use in the widget. +- `show_date_column` (Boolean) If the date column should be displayed. +- `show_message_column` (Boolean) If the message column should be displayed. +- `sort` (Block List, Max: 1) The facet and order to sort the data, for example: `{"column": "time", "order": "desc"}`. (see [below for nested schema](#nestedblock--widget--log_stream_definition--sort)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). - -### Nested Schema for `widget.group_definition.widget.geomap_definition.request.rum_query.group_by.sort_query` + +### Nested Schema for `widget.log_stream_definition.sort` Required: -- `aggregation` (String) The aggregation method. +- `column` (String) The facet path for the column. - `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. -Optional: - -- `facet` (String) The facet name. - - -### Nested Schema for `widget.group_definition.widget.geomap_definition.request.rum_query.multi_compute` + +### Nested Schema for `widget.manage_status_definition` Required: -- `aggregation` (String) The aggregation method. +- `query` (String) The query to use in the widget. Optional: -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - +- `color_preference` (String) Whether to colorize text or background. Valid values are `background`, `text`. +- `display_format` (String) The display setting to use. Valid values are `counts`, `countsAndList`, `list`. +- `hide_zero_counts` (Boolean) A Boolean indicating whether to hide empty categories. +- `show_last_triggered` (Boolean) A Boolean indicating whether to show when monitors/groups last triggered. +- `show_priority` (Boolean) Whether to show the priorities column. +- `sort` (String) The method to sort the monitors. Valid values are `name`, `group`, `status`, `tags`, `triggered`, `group,asc`, `group,desc`, `name,asc`, `name,desc`, `status,asc`, `status,desc`, `tags,asc`, `tags,desc`, `triggered,asc`, `triggered,desc`, `priority,asc`, `priority,desc`. +- `summary_type` (String) The summary type to use. Valid values are `monitors`, `groups`, `combined`. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). - -### Nested Schema for `widget.group_definition.widget.geomap_definition.style` + +### Nested Schema for `widget.note_definition` Required: -- `palette` (String) The color palette to apply to the widget. -- `palette_flip` (Boolean) A Boolean indicating whether to flip the palette tones. +- `content` (String) The content of the note. + +Optional: +- `background_color` (String) The background color of the note. +- `font_size` (String) The size of the text. +- `has_padding` (Boolean) Whether to add padding or not. Defaults to `true`. +- `show_tick` (Boolean) Whether to show a tick or not. +- `text_align` (String) The alignment of the widget's text. Valid values are `center`, `left`, `right`. +- `tick_edge` (String) When `tick = true`, a string indicating on which side of the widget the tick should be displayed. Valid values are `bottom`, `left`, `right`, `top`. +- `tick_pos` (String) When `tick = true`, a string with a percent sign indicating the position of the tick, for example: `tick_pos = "50%"` is centered alignment. +- `vertical_align` (String) The vertical alignment for the widget. Valid values are `center`, `top`, `bottom`. - -### Nested Schema for `widget.group_definition.widget.heatmap_definition` + +### Nested Schema for `widget.query_table_definition` Optional: -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--custom_link)) -- `event` (Block List) The definition of the event to overlay on the graph. Multiple `event` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--event)) -- `legend_size` (String) The size of the legend displayed in the widget. +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--custom_link)) +- `has_search_bar` (String) Controls the display of the search bar. Valid values are `always`, `never`, `auto`. - `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the request block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request)) -- `show_legend` (Boolean) Whether or not to show the legend on this widget. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query`, `apm_stats_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--query_table_definition--request)) - `title` (String) The title of the widget. - `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. - `title_size` (String) The size of the widget's title (defaults to 16). -- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--yaxis)) - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.custom_link` + +### Nested Schema for `widget.query_table_definition.custom_link` Optional: @@ -2923,35 +2815,29 @@ Optional: - `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.event` - -Required: - -- `q` (String) The event query to use in the widget. - -Optional: - -- `tags_execution` (String) The execution method for multi-value filters. - - - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request` + +### Nested Schema for `widget.query_table_definition.request` Optional: -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--apm_query)) -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--formula)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--log_query)) -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--process_query)) +- `aggregator` (String) The aggregator to use for time aggregation. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. +- `alias` (String) The alias for the column name (defaults to metric name). +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--apm_query)) +- `apm_stats_query` (Block List, Max: 1) (see [below for nested schema](#nestedblock--widget--query_table_definition--request--apm_stats_query)) +- `cell_display_mode` (List of String) A list of display modes for each table cell. List items one of `number`, `bar`. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background, depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--conditional_formats)) +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--query_table_definition--request--formula)) +- `limit` (Number) The number of lines to show in the table. +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--log_query)) +- `order` (String) The sort order for the rows. Valid values are `asc`, `desc`. +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--process_query)) - `q` (String) The metric query to use for this widget. -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--query)) -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--security_query)) -- `style` (Block List, Max: 1) The style of the widget graph. One nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--style)) +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--security_query)) - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.apm_query` + +### Nested Schema for `widget.query_table_definition.request.apm_query` Required: @@ -2959,13 +2845,13 @@ Required: Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--apm_query--multi_compute)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--apm_query--multi_compute)) - `search_query` (String) The search query to use. - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.apm_query.compute_query` + +### Nested Schema for `widget.query_table_definition.request.apm_query.compute_query` Required: @@ -2977,17 +2863,17 @@ Optional: - `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.apm_query.group_by` + +### Nested Schema for `widget.query_table_definition.request.apm_query.group_by` Optional: - `facet` (String) The facet name. - `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--apm_query--group_by--sort_query)) +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--apm_query--group_by--sort_query)) - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.apm_query.group_by.sort_query` + +### Nested Schema for `widget.query_table_definition.request.apm_query.group_by.sort_query` Required: @@ -3000,8 +2886,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.apm_query.multi_compute` + +### Nested Schema for `widget.query_table_definition.request.apm_query.multi_compute` Required: @@ -3014,23 +2900,39 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.formula` + +### Nested Schema for `widget.query_table_definition.request.apm_stats_query` Required: -- `formula_expression` (String) A string expression built from queries, formulas, and functions. +- `env` (String) The environment name. +- `name` (String) The operation name associated with the service. +- `primary_tag` (String) The organization's host group name and value. +- `row_type` (String) The level of detail for the request. Valid values are `service`, `resource`, `span`. +- `service` (String) The service name. Optional: -- `alias` (String) An expression alias. +- `columns` (Block List) Column properties used by the front end for display. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--apm_stats_query--columns)) +- `resource` (String) The resource name. + + +### Nested Schema for `widget.query_table_definition.request.apm_stats_query.columns` + +Required: + +- `name` (String) The column name. + +Optional: + +- `alias` (String) A user-assigned alias for the column. - `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--formula--conditional_formats)) -- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--formula--limit)) -- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--formula--style)) +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.formula.conditional_formats` + + +### Nested Schema for `widget.query_table_definition.request.conditional_formats` Required: @@ -3048,27 +2950,61 @@ Optional: - `timeframe` (String) Defines the displayed timeframe. - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.formula.limit` - -Optional: - -- `count` (Number) The number of results to return. -- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + +### Nested Schema for `widget.query_table_definition.request.formula` +Required: - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.formula.style` +- `formula_expression` (String) A string expression built from queries, formulas, and functions. Optional: -- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. -- `palette_index` (Number) Index specifying which color to use within the palette. +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--formula--style)) + +### Nested Schema for `widget.query_table_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.query_table_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.query_table_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.log_query` + + +### Nested Schema for `widget.query_table_definition.request.log_query` Required: @@ -3076,13 +3012,13 @@ Required: Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--log_query--multi_compute)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--log_query--multi_compute)) - `search_query` (String) The search query to use. - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.log_query.compute_query` + +### Nested Schema for `widget.query_table_definition.request.log_query.compute_query` Required: @@ -3094,17 +3030,17 @@ Optional: - `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.log_query.group_by` + +### Nested Schema for `widget.query_table_definition.request.log_query.group_by` Optional: - `facet` (String) The facet name. - `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--log_query--group_by--sort_query)) +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--log_query--group_by--sort_query)) - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.log_query.group_by.sort_query` + +### Nested Schema for `widget.query_table_definition.request.log_query.group_by.sort_query` Required: @@ -3117,8 +3053,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.log_query.multi_compute` + +### Nested Schema for `widget.query_table_definition.request.log_query.multi_compute` Required: @@ -3131,8 +3067,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.process_query` + +### Nested Schema for `widget.query_table_definition.request.process_query` Required: @@ -3145,20 +3081,20 @@ Optional: - `search_by` (String) Your chosen search term. - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.query` + +### Nested Schema for `widget.query_table_definition.request.query` Optional: -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--query--slo_query)) +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query--slo_query)) - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.query.apm_dependency_stats_query` + +### Nested Schema for `widget.query_table_definition.request.query.apm_dependency_stats_query` Required: @@ -3177,8 +3113,8 @@ Optional: - `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.query.apm_resource_stats_query` + +### Nested Schema for `widget.query_table_definition.request.query.apm_resource_stats_query` Required: @@ -3197,24 +3133,24 @@ Optional: - `resource_name` (String) APM resource. - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.query.event_query` + +### Nested Schema for `widget.query_table_definition.request.query.event_query` Required: -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--query--event_query--compute)) +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query--event_query--compute)) - `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. - `name` (String) The name of query for use in formulas. Optional: -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--query--event_query--group_by)) +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query--event_query--group_by)) - `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--query--event_query--search)) +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query--event_query--search)) - `storage` (String) Storage location (private beta). - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.query.event_query.compute` + +### Nested Schema for `widget.query_table_definition.request.query.event_query.compute` Required: @@ -3226,8 +3162,8 @@ Optional: - `metric` (String) The measurable attribute to compute. - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.query.event_query.group_by` + +### Nested Schema for `widget.query_table_definition.request.query.event_query.group_by` Required: @@ -3236,10 +3172,10 @@ Required: Optional: - `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--query--event_query--group_by--sort)) +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query--event_query--group_by--sort)) - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.query.event_query.group_by.sort` + +### Nested Schema for `widget.query_table_definition.request.query.event_query.group_by.sort` Required: @@ -3252,8 +3188,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.query.event_query.search` + +### Nested Schema for `widget.query_table_definition.request.query.event_query.search` Required: @@ -3261,8 +3197,8 @@ Required: - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.query.metric_query` + +### Nested Schema for `widget.query_table_definition.request.query.metric_query` Required: @@ -3275,8 +3211,8 @@ Optional: - `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.query.process_query` + +### Nested Schema for `widget.query_table_definition.request.query.process_query` Required: @@ -3294,8 +3230,8 @@ Optional: - `text_filter` (String) The text to use as a filter. - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.query.slo_query` + +### Nested Schema for `widget.query_table_definition.request.query.slo_query` Required: @@ -3312,8 +3248,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.rum_query` + +### Nested Schema for `widget.query_table_definition.request.rum_query` Required: @@ -3321,13 +3257,13 @@ Required: Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--rum_query--multi_compute)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--rum_query--multi_compute)) - `search_query` (String) The search query to use. - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.rum_query.compute_query` + +### Nested Schema for `widget.query_table_definition.request.rum_query.compute_query` Required: @@ -3339,17 +3275,17 @@ Optional: - `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.rum_query.group_by` + +### Nested Schema for `widget.query_table_definition.request.rum_query.group_by` Optional: - `facet` (String) The facet name. - `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--rum_query--group_by--sort_query)) +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--rum_query--group_by--sort_query)) - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.rum_query.group_by.sort_query` + +### Nested Schema for `widget.query_table_definition.request.rum_query.group_by.sort_query` Required: @@ -3362,8 +3298,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.rum_query.multi_compute` + +### Nested Schema for `widget.query_table_definition.request.rum_query.multi_compute` Required: @@ -3376,8 +3312,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.security_query` + +### Nested Schema for `widget.query_table_definition.request.security_query` Required: @@ -3385,13 +3321,13 @@ Required: Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--security_query--multi_compute)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--security_query--multi_compute)) - `search_query` (String) The search query to use. - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.security_query.compute_query` + +### Nested Schema for `widget.query_table_definition.request.security_query.compute_query` Required: @@ -3403,17 +3339,17 @@ Optional: - `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.security_query.group_by` + +### Nested Schema for `widget.query_table_definition.request.security_query.group_by` Optional: - `facet` (String) The facet name. - `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--heatmap_definition--request--security_query--group_by--sort_query)) +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--security_query--group_by--sort_query)) - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.security_query.group_by.sort_query` + +### Nested Schema for `widget.query_table_definition.request.security_query.group_by.sort_query` Required: @@ -3426,8 +3362,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.security_query.multi_compute` + +### Nested Schema for `widget.query_table_definition.request.security_query.multi_compute` Required: @@ -3440,47 +3376,27 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.request.style` - -Optional: - -- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. - - - - -### Nested Schema for `widget.group_definition.widget.heatmap_definition.yaxis` - -Optional: - -- `include_zero` (Boolean) Always include zero or fit the axis to the data range. -- `label` (String) The label of the axis to display on the graph. -- `max` (String) Specify the maximum value to show on the Y-axis. -- `min` (String) Specify the minimum value to show on the Y-axis. -- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. - - -### Nested Schema for `widget.group_definition.widget.hostmap_definition` + +### Nested Schema for `widget.query_value_definition` Optional: -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--custom_link)) -- `group` (List of String) The list of tags to group nodes by. -- `no_group_hosts` (Boolean) A Boolean indicating whether to show ungrouped nodes. -- `no_metric_hosts` (Boolean) A Boolean indicating whether to show nodes with no metrics. -- `node_type` (String) The type of node used. Valid values are `host`, `container`. -- `request` (Block List, Max: 1) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request)) -- `scope` (List of String) The list of tags to filter nodes by. -- `style` (Block List, Max: 1) The style of the widget graph. One nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--style)) +- `autoscale` (Boolean) A Boolean indicating whether to automatically scale the tile. +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--custom_link)) +- `custom_unit` (String) The unit for the value displayed in the widget. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `precision` (Number) The precision to use when displaying the tile. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--query_value_definition--request)) +- `text_align` (String) The alignment of the widget's text. Valid values are `center`, `left`, `right`. +- `timeseries_background` (Block List, Max: 1) Set a timeseries on the widget background. (see [below for nested schema](#nestedblock--widget--query_value_definition--timeseries_background)) - `title` (String) The title of the widget. - `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. - `title_size` (String) The size of the widget's title (defaults to 16). - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.custom_link` + +### Nested Schema for `widget.query_value_definition.custom_link` Optional: @@ -3490,28 +3406,25 @@ Optional: - `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request` - -Optional: - -- `fill` (Block List) The query used to fill the map. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the request block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill)) -- `size` (Block List) The query used to size the map. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the request block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size)) - - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill` + +### Nested Schema for `widget.query_value_definition.request` Optional: -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--apm_query)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--log_query)) -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--process_query)) +- `aggregator` (String) The aggregator to use for time aggregation. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--apm_query)) +- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--audit_query)) +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--conditional_formats)) +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--query_value_definition--request--formula)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--process_query)) - `q` (String) The metric query to use for this widget. -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--security_query)) +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--security_query)) - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.apm_query` + +### Nested Schema for `widget.query_value_definition.request.apm_query` Required: @@ -3519,13 +3432,13 @@ Required: Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--apm_query--multi_compute)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--apm_query--multi_compute)) - `search_query` (String) The search query to use. - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.apm_query.compute_query` + +### Nested Schema for `widget.query_value_definition.request.apm_query.compute_query` Required: @@ -3537,17 +3450,17 @@ Optional: - `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.apm_query.group_by` + +### Nested Schema for `widget.query_value_definition.request.apm_query.group_by` Optional: - `facet` (String) The facet name. - `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--apm_query--group_by--sort_query)) +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--apm_query--group_by--sort_query)) - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.apm_query.group_by.sort_query` + +### Nested Schema for `widget.query_value_definition.request.apm_query.group_by.sort_query` Required: @@ -3560,8 +3473,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.apm_query.multi_compute` + +### Nested Schema for `widget.query_value_definition.request.apm_query.multi_compute` Required: @@ -3574,8 +3487,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.log_query` + +### Nested Schema for `widget.query_value_definition.request.audit_query` Required: @@ -3583,13 +3496,13 @@ Required: Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--log_query--multi_compute)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--audit_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--audit_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--audit_query--multi_compute)) - `search_query` (String) The search query to use. - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.log_query.compute_query` + +### Nested Schema for `widget.query_value_definition.request.audit_query.compute_query` Required: @@ -3601,17 +3514,17 @@ Optional: - `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.log_query.group_by` + +### Nested Schema for `widget.query_value_definition.request.audit_query.group_by` Optional: - `facet` (String) The facet name. - `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--log_query--group_by--sort_query)) +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--audit_query--group_by--sort_query)) - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.log_query.group_by.sort_query` + +### Nested Schema for `widget.query_value_definition.request.audit_query.group_by.sort_query` Required: @@ -3624,8 +3537,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.log_query.multi_compute` + +### Nested Schema for `widget.query_value_definition.request.audit_query.multi_compute` Required: @@ -3638,104 +3551,98 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.process_query` + +### Nested Schema for `widget.query_value_definition.request.conditional_formats` Required: -- `metric` (String) Your chosen metric. +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. Optional: -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.rum_query` + +### Nested Schema for `widget.query_value_definition.request.formula` Required: -- `index` (String) The name of the index to query. +- `formula_expression` (String) A string expression built from queries, formulas, and functions. Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--rum_query--multi_compute)) -- `search_query` (String) The search query to use. +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--formula--style)) - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.rum_query.compute_query` + +### Nested Schema for `widget.query_value_definition.request.formula.conditional_formats` Required: -- `aggregation` (String) The aggregation method. +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. Optional: -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.rum_query.group_by` + +### Nested Schema for `widget.query_value_definition.request.formula.limit` Optional: -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.rum_query.group_by.sort_query` +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -Required: -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +### Nested Schema for `widget.query_value_definition.request.formula.style` Optional: -- `facet` (String) The facet name. +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.rum_query.multi_compute` + +### Nested Schema for `widget.query_value_definition.request.log_query` Required: -- `aggregation` (String) The aggregation method. +- `index` (String) The name of the index to query. Optional: -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.security_query` + +### Nested Schema for `widget.query_value_definition.request.log_query.compute_query` Required: -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--security_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.security_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. +- `aggregation` (String) The aggregation method. Optional: @@ -3743,17 +3650,17 @@ Optional: - `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.security_query.group_by` + +### Nested Schema for `widget.query_value_definition.request.log_query.group_by` Optional: - `facet` (String) The facet name. - `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--fill--security_query--group_by--sort_query)) +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--log_query--group_by--sort_query)) - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.security_query.group_by.sort_query` + +### Nested Schema for `widget.query_value_definition.request.log_query.group_by.sort_query` Required: @@ -3766,8 +3673,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.fill.security_query.multi_compute` + +### Nested Schema for `widget.query_value_definition.request.log_query.multi_compute` Required: @@ -3780,163 +3687,189 @@ Optional: + +### Nested Schema for `widget.query_value_definition.request.process_query` - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size` +Required: -Optional: +- `metric` (String) Your chosen metric. -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--apm_query)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--log_query)) -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--process_query)) -- `q` (String) The metric query to use for this widget. -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--security_query)) +Optional: - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.apm_query` +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. -Required: -- `index` (String) The name of the index to query. + +### Nested Schema for `widget.query_value_definition.request.query` Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--apm_query--multi_compute)) -- `search_query` (String) The search query to use. +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--slo_query)) - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.apm_query.compute_query` + +### Nested Schema for `widget.query_value_definition.request.query.apm_dependency_stats_query` Required: -- `aggregation` (String) The aggregation method. +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. Optional: -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.query_value_definition.request.query.apm_resource_stats_query` +Required: - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.apm_query.group_by` +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. Optional: -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--apm_query--group_by--sort_query)) +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.apm_query.group_by.sort_query` + +### Nested Schema for `widget.query_value_definition.request.query.event_query` Required: -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. Optional: -- `facet` (String) The facet name. - - +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.apm_query.multi_compute` + +### Nested Schema for `widget.query_value_definition.request.query.event_query.compute` Required: -- `aggregation` (String) The aggregation method. +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. Optional: -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.log_query` + +### Nested Schema for `widget.query_value_definition.request.query.event_query.group_by` Required: -- `index` (String) The name of the index to query. +- `facet` (String) The event facet. Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--log_query--multi_compute)) -- `search_query` (String) The search query to use. +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--event_query--group_by--sort)) - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.log_query.compute_query` + +### Nested Schema for `widget.query_value_definition.request.query.event_query.group_by.sort` Required: -- `aggregation` (String) The aggregation method. +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. Optional: -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.log_query.group_by` -Optional: + +### Nested Schema for `widget.query_value_definition.request.query.event_query.search` -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--log_query--group_by--sort_query)) +Required: + +- `query` (String) The events search string. - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.log_query.group_by.sort_query` + + + +### Nested Schema for `widget.query_value_definition.request.query.metric_query` Required: -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. Optional: -- `facet` (String) The facet name. - +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.log_query.multi_compute` + +### Nested Schema for `widget.query_value_definition.request.query.process_query` Required: -- `aggregation` (String) The aggregation method. +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. Optional: -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.process_query` + +### Nested Schema for `widget.query_value_definition.request.query.slo_query` Required: -- `metric` (String) Your chosen metric. +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. Optional: -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.rum_query` + + +### Nested Schema for `widget.query_value_definition.request.rum_query` Required: @@ -3944,13 +3877,13 @@ Required: Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--rum_query--multi_compute)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--rum_query--multi_compute)) - `search_query` (String) The search query to use. - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.rum_query.compute_query` + +### Nested Schema for `widget.query_value_definition.request.rum_query.compute_query` Required: @@ -3962,17 +3895,17 @@ Optional: - `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.rum_query.group_by` + +### Nested Schema for `widget.query_value_definition.request.rum_query.group_by` Optional: - `facet` (String) The facet name. - `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--rum_query--group_by--sort_query)) +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--rum_query--group_by--sort_query)) - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.rum_query.group_by.sort_query` + +### Nested Schema for `widget.query_value_definition.request.rum_query.group_by.sort_query` Required: @@ -3985,8 +3918,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.rum_query.multi_compute` + +### Nested Schema for `widget.query_value_definition.request.rum_query.multi_compute` Required: @@ -3999,8 +3932,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.security_query` + +### Nested Schema for `widget.query_value_definition.request.security_query` Required: @@ -4008,13 +3941,13 @@ Required: Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--security_query--multi_compute)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--security_query--multi_compute)) - `search_query` (String) The search query to use. - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.security_query.compute_query` + +### Nested Schema for `widget.query_value_definition.request.security_query.compute_query` Required: @@ -4026,17 +3959,17 @@ Optional: - `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.security_query.group_by` + +### Nested Schema for `widget.query_value_definition.request.security_query.group_by` Optional: - `facet` (String) The facet name. - `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--hostmap_definition--request--size--security_query--group_by--sort_query)) +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--security_query--group_by--sort_query)) - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.security_query.group_by.sort_query` + +### Nested Schema for `widget.query_value_definition.request.security_query.group_by.sort_query` Required: @@ -4049,8 +3982,8 @@ Optional: - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.request.size.security_query.multi_compute` + +### Nested Schema for `widget.query_value_definition.request.security_query.multi_compute` Required: @@ -4064,17754 +3997,138 @@ Optional: - - -### Nested Schema for `widget.group_definition.widget.hostmap_definition.style` - -Optional: - -- `fill_max` (String) The max value to use to color the map. -- `fill_min` (String) The min value to use to color the map. -- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. -- `palette_flip` (Boolean) A Boolean indicating whether to flip the palette tones. - - - - -### Nested Schema for `widget.group_definition.widget.iframe_definition` + +### Nested Schema for `widget.query_value_definition.timeseries_background` Required: -- `url` (String) The URL to use as a data source for the widget. - +- `type` (String) Whether the Timeseries is made using an area or bars. Valid values are `bars`, `area`. - -### Nested Schema for `widget.group_definition.widget.image_definition` +Optional: -Required: +- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--timeseries_background--yaxis)) -- `url` (String) The URL to use as a data source for the widget. + +### Nested Schema for `widget.query_value_definition.timeseries_background.yaxis` Optional: -- `has_background` (Boolean) Whether to display a background or not. Defaults to `true`. -- `has_border` (Boolean) Whether to display a border or not. Defaults to `true`. -- `horizontal_align` (String) The horizontal alignment for the widget. Valid values are `center`, `left`, `right`. -- `margin` (String) The margins to use around the image. Note: `small` and `large` values are deprecated. Valid values are `sm`, `md`, `lg`, `small`, `large`. -- `sizing` (String) The preferred method to adapt the dimensions of the image. The values are based on the image `object-fit` CSS properties. Note: `zoom`, `fit` and `center` values are deprecated. Valid values are `fill`, `contain`, `cover`, `none`, `scale-down`, `zoom`, `fit`, `center`. -- `url_dark_theme` (String) The URL in dark mode to use as a data source for the widget. -- `vertical_align` (String) The vertical alignment for the widget. Valid values are `center`, `top`, `bottom`. +- `include_zero` (Boolean) Always include zero or fit the axis to the data range. +- `label` (String) The label of the axis to display on the graph. +- `max` (String) Specify the maximum value to show on the Y-axis. +- `min` (String) Specify the minimum value to show on the Y-axis. +- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + - -### Nested Schema for `widget.group_definition.widget.list_stream_definition` + + +### Nested Schema for `widget.run_workflow_definition` Required: -- `request` (Block List, Min: 1) Nested block describing the requests to use when displaying the widget. Multiple `request` blocks are allowed with the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--list_stream_definition--request)) +- `workflow_id` (String) Workflow ID Optional: +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--run_workflow_definition--custom_link)) +- `input` (Block List) Array of workflow inputs to map to dashboard template variables. (see [below for nested schema](#nestedblock--widget--run_workflow_definition--input)) +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. - `title` (String) The title of the widget. - `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title. Default is 16. +- `title_size` (String) The size of the widget's title (defaults to 16). - -### Nested Schema for `widget.group_definition.widget.list_stream_definition.request` + +### Nested Schema for `widget.run_workflow_definition.custom_link` -Required: +Optional: -- `columns` (Block List, Min: 1) Widget columns. (see [below for nested schema](#nestedblock--widget--group_definition--widget--list_stream_definition--request--columns)) -- `query` (Block List, Min: 1, Max: 1) Updated list stream widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--list_stream_definition--request--query)) -- `response_format` (String) Widget response format. Valid values are `event_list`. +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - -### Nested Schema for `widget.group_definition.widget.list_stream_definition.request.columns` -Required: + +### Nested Schema for `widget.run_workflow_definition.input` -- `field` (String) Widget column field. -- `width` (String) Widget column width. Valid values are `auto`, `compact`, `full`. +Required: +- `name` (String) Name of the workflow input. +- `value` (String) Dashboard template variable. Can be suffixed with `.value` or `.key`. - -### Nested Schema for `widget.group_definition.widget.list_stream_definition.request.query` -Required: -- `data_source` (String) Source from which to query items to display in the stream. Valid values are `logs_stream`, `audit_stream`, `ci_pipeline_stream`, `ci_test_stream`, `rum_issue_stream`, `apm_issue_stream`, `trace_stream`, `logs_issue_stream`, `logs_pattern_stream`, `logs_transaction_stream`, `event_stream`. + +### Nested Schema for `widget.scatterplot_definition` Optional: -- `event_size` (String) Size of events displayed in widget. Required if `data_source` is `event_stream`. Valid values are `s`, `l`. -- `indexes` (List of String) List of indexes. -- `query_string` (String) Widget query. -- `sort` (Block List, Max: 1) The facet and order to sort the data, for example: `{"column": "time", "order": "desc"}`. (see [below for nested schema](#nestedblock--widget--group_definition--widget--list_stream_definition--request--query--sort)) -- `storage` (String) Storage location (private beta). - - -### Nested Schema for `widget.group_definition.widget.list_stream_definition.request.query.sort` - -Required: - -- `column` (String) The facet path for the column. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - - - - - - -### Nested Schema for `widget.group_definition.widget.log_stream_definition` - -Optional: - -- `columns` (List of String) Stringified list of columns to use, for example: `["column1","column2","column3"]`. -- `indexes` (List of String) An array of index names to query in the stream. -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `message_display` (String) The number of log lines to display. Valid values are `inline`, `expanded-md`, `expanded-lg`. -- `query` (String) The query to use in the widget. -- `show_date_column` (Boolean) If the date column should be displayed. -- `show_message_column` (Boolean) If the message column should be displayed. -- `sort` (Block List, Max: 1) The facet and order to sort the data, for example: `{"column": "time", "order": "desc"}`. (see [below for nested schema](#nestedblock--widget--group_definition--widget--log_stream_definition--sort)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). - - -### Nested Schema for `widget.group_definition.widget.log_stream_definition.sort` - -Required: - -- `column` (String) The facet path for the column. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.group_definition.widget.manage_status_definition` - -Required: - -- `query` (String) The query to use in the widget. - -Optional: - -- `color_preference` (String) Whether to colorize text or background. Valid values are `background`, `text`. -- `display_format` (String) The display setting to use. Valid values are `counts`, `countsAndList`, `list`. -- `hide_zero_counts` (Boolean) A Boolean indicating whether to hide empty categories. -- `show_last_triggered` (Boolean) A Boolean indicating whether to show when monitors/groups last triggered. -- `show_priority` (Boolean) Whether to show the priorities column. -- `sort` (String) The method to sort the monitors. Valid values are `name`, `group`, `status`, `tags`, `triggered`, `group,asc`, `group,desc`, `name,asc`, `name,desc`, `status,asc`, `status,desc`, `tags,asc`, `tags,desc`, `triggered,asc`, `triggered,desc`, `priority,asc`, `priority,desc`. -- `summary_type` (String) The summary type to use. Valid values are `monitors`, `groups`, `combined`. -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). - - - -### Nested Schema for `widget.group_definition.widget.note_definition` - -Required: - -- `content` (String) The content of the note. - -Optional: - -- `background_color` (String) The background color of the note. -- `font_size` (String) The size of the text. -- `has_padding` (Boolean) Whether to add padding or not. Defaults to `true`. -- `show_tick` (Boolean) Whether to show a tick or not. -- `text_align` (String) The alignment of the widget's text. Valid values are `center`, `left`, `right`. -- `tick_edge` (String) When `tick = true`, a string indicating on which side of the widget the tick should be displayed. Valid values are `bottom`, `left`, `right`, `top`. -- `tick_pos` (String) When `tick = true`, a string with a percent sign indicating the position of the tick, for example: `tick_pos = "50%"` is centered alignment. -- `vertical_align` (String) The vertical alignment for the widget. Valid values are `center`, `top`, `bottom`. - - - -### Nested Schema for `widget.group_definition.widget.query_table_definition` - -Optional: - -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--custom_link)) -- `has_search_bar` (String) Controls the display of the search bar. Valid values are `always`, `never`, `auto`. -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query`, `apm_stats_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request` - -Optional: - -- `aggregator` (String) The aggregator to use for time aggregation. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. -- `alias` (String) The alias for the column name (defaults to metric name). -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--apm_query)) -- `apm_stats_query` (Block List, Max: 1) (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--apm_stats_query)) -- `cell_display_mode` (List of String) A list of display modes for each table cell. List items one of `number`, `bar`. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background, depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--conditional_formats)) -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--formula)) -- `limit` (Number) The number of lines to show in the table. -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--log_query)) -- `order` (String) The sort order for the rows. Valid values are `asc`, `desc`. -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--process_query)) -- `q` (String) The metric query to use for this widget. -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--query)) -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--security_query)) - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.apm_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--apm_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.apm_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.apm_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--apm_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.apm_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.apm_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.apm_stats_query` - -Required: - -- `env` (String) The environment name. -- `name` (String) The operation name associated with the service. -- `primary_tag` (String) The organization's host group name and value. -- `row_type` (String) The level of detail for the request. Valid values are `service`, `resource`, `span`. -- `service` (String) The service name. - -Optional: - -- `columns` (Block List) Column properties used by the front end for display. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--apm_stats_query--columns)) -- `resource` (String) The resource name. - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.apm_stats_query.columns` - -Required: - -- `name` (String) The column name. - -Optional: - -- `alias` (String) A user-assigned alias for the column. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.formula` - -Required: - -- `formula_expression` (String) A string expression built from queries, formulas, and functions. - -Optional: - -- `alias` (String) An expression alias. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--formula--conditional_formats)) -- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--formula--limit)) -- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--formula--style)) - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.formula.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.formula.limit` - -Optional: - -- `count` (Number) The number of results to return. -- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. - - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.formula.style` - -Optional: - -- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. -- `palette_index` (Number) Index specifying which color to use within the palette. - - - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.process_query` - -Required: - -- `metric` (String) Your chosen metric. - -Optional: - -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. - - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.query` - -Optional: - -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--query--slo_query)) - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.query.apm_dependency_stats_query` - -Required: - -- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `operation_name` (String) Name of operation on service. -- `resource_name` (String) APM resource. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. - -Optional: - -- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.query.apm_resource_stats_query` - -Required: - -- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. - -Optional: - -- `group_by` (List of String) Array of fields to group results by. -- `operation_name` (String) Name of operation on service. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. -- `resource_name` (String) APM resource. - - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.query.event_query` - -Required: - -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--query--event_query--compute)) -- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--query--event_query--group_by)) -- `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--query--event_query--search)) -- `storage` (String) Storage location (private beta). - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.query.event_query.compute` - -Required: - -- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `interval` (Number) A time interval in milliseconds. -- `metric` (String) The measurable attribute to compute. - - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.query.event_query.group_by` - -Required: - -- `facet` (String) The event facet. - -Optional: - -- `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--query--event_query--group_by--sort)) - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.query.event_query.group_by.sort` - -Required: - -- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `metric` (String) The metric used for sorting group by results. -- `order` (String) Direction of sort. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.query.event_query.search` - -Required: - -- `query` (String) The events search string. - - - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.query.metric_query` - -Required: - -- `name` (String) The name of the query for use in formulas. -- `query` (String) The metrics query definition. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.query.process_query` - -Required: - -- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. -- `metric` (String) The process metric name. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. -- `limit` (Number) The number of hits to return. -- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -- `tag_filters` (List of String) An array of tags to filter by. -- `text_filter` (String) The text to use as a filter. - - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.query.slo_query` - -Required: - -- `data_source` (String) The data source for SLO queries. Valid values are `slo`. -- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. -- `slo_id` (String) ID of an SLO to query. - -Optional: - -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. -- `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - - - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.security_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--security_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.security_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.security_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_table_definition--request--security_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.security_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.query_table_definition.request.security_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - - - -### Nested Schema for `widget.group_definition.widget.query_value_definition` - -Optional: - -- `autoscale` (Boolean) A Boolean indicating whether to automatically scale the tile. -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--custom_link)) -- `custom_unit` (String) The unit for the value displayed in the widget. -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `precision` (Number) The precision to use when displaying the tile. -- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request)) -- `text_align` (String) The alignment of the widget's text. Valid values are `center`, `left`, `right`. -- `timeseries_background` (Block List, Max: 1) Set a timeseries on the widget background. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--timeseries_background)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request` - -Optional: - -- `aggregator` (String) The aggregator to use for time aggregation. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--apm_query)) -- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--audit_query)) -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--conditional_formats)) -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--formula)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--log_query)) -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--process_query)) -- `q` (String) The metric query to use for this widget. -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--query)) -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--security_query)) - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.apm_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--apm_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.apm_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.apm_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--apm_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.apm_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.apm_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.audit_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--audit_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--audit_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--audit_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.audit_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.audit_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--audit_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.audit_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.audit_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.formula` - -Required: - -- `formula_expression` (String) A string expression built from queries, formulas, and functions. - -Optional: - -- `alias` (String) An expression alias. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--formula--conditional_formats)) -- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--formula--limit)) -- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--formula--style)) - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.formula.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.formula.limit` - -Optional: - -- `count` (Number) The number of results to return. -- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. - - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.formula.style` - -Optional: - -- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. -- `palette_index` (Number) Index specifying which color to use within the palette. - - - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.process_query` - -Required: - -- `metric` (String) Your chosen metric. - -Optional: - -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. - - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.query` - -Optional: - -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--query--slo_query)) - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.query.apm_dependency_stats_query` - -Required: - -- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `operation_name` (String) Name of operation on service. -- `resource_name` (String) APM resource. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. - -Optional: - -- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.query.apm_resource_stats_query` - -Required: - -- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. - -Optional: - -- `group_by` (List of String) Array of fields to group results by. -- `operation_name` (String) Name of operation on service. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. -- `resource_name` (String) APM resource. - - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.query.event_query` - -Required: - -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--query--event_query--compute)) -- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--query--event_query--group_by)) -- `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--query--event_query--search)) -- `storage` (String) Storage location (private beta). - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.query.event_query.compute` - -Required: - -- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `interval` (Number) A time interval in milliseconds. -- `metric` (String) The measurable attribute to compute. - - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.query.event_query.group_by` - -Required: - -- `facet` (String) The event facet. - -Optional: - -- `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--query--event_query--group_by--sort)) - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.query.event_query.group_by.sort` - -Required: - -- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `metric` (String) The metric used for sorting group by results. -- `order` (String) Direction of sort. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.query.event_query.search` - -Required: - -- `query` (String) The events search string. - - - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.query.metric_query` - -Required: - -- `name` (String) The name of the query for use in formulas. -- `query` (String) The metrics query definition. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.query.process_query` - -Required: - -- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. -- `metric` (String) The process metric name. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. -- `limit` (Number) The number of hits to return. -- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -- `tag_filters` (List of String) An array of tags to filter by. -- `text_filter` (String) The text to use as a filter. - - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.query.slo_query` - -Required: - -- `data_source` (String) The data source for SLO queries. Valid values are `slo`. -- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. -- `slo_id` (String) ID of an SLO to query. - -Optional: - -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. -- `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - - - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.security_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--security_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.security_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.security_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--request--security_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.security_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.request.security_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.timeseries_background` - -Required: - -- `type` (String) Whether the Timeseries is made using an area or bars. Valid values are `bars`, `area`. - -Optional: - -- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--query_value_definition--timeseries_background--yaxis)) - - -### Nested Schema for `widget.group_definition.widget.query_value_definition.timeseries_background.yaxis` - -Optional: - -- `include_zero` (Boolean) Always include zero or fit the axis to the data range. -- `label` (String) The label of the axis to display on the graph. -- `max` (String) Specify the maximum value to show on the Y-axis. -- `min` (String) Specify the minimum value to show on the Y-axis. -- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. - - - - - -### Nested Schema for `widget.group_definition.widget.run_workflow_definition` - -Required: - -- `workflow_id` (String) Workflow ID - -Optional: - -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--run_workflow_definition--custom_link)) -- `input` (Block List) Array of workflow inputs to map to dashboard template variables. (see [below for nested schema](#nestedblock--widget--group_definition--widget--run_workflow_definition--input)) -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). - - -### Nested Schema for `widget.group_definition.widget.run_workflow_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - -### Nested Schema for `widget.group_definition.widget.run_workflow_definition.input` - -Required: - -- `name` (String) Name of the workflow input. -- `value` (String) Dashboard template variable. Can be suffixed with `.value` or `.key`. - - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition` - -Optional: - -- `color_by_groups` (List of String) List of groups used for colors. -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--custom_link)) -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `request` (Block List, Max: 1) A nested block describing the request to use when displaying the widget. Exactly one `request` block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). -- `xaxis` (Block List, Max: 1) A nested block describing the X-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--xaxis)) -- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--yaxis)) - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request` - -Optional: - -- `scatterplot_table` (Block List) Scatterplot request containing formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--scatterplot_table)) -- `x` (Block List) The query used for the X-Axis. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query`, `apm_stats_query` or `process_query` is required within the block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x)) -- `y` (Block List) The query used for the Y-Axis. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query`, `apm_stats_query` or `process_query` is required within the block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y)) - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.scatterplot_table` - -Optional: - -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--scatterplot_table--formula)) -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--scatterplot_table--query)) - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.scatterplot_table.formula` - -Required: - -- `dimension` (String) Dimension of the Scatterplot. Valid values are `x`, `y`, `radius`, `color`. -- `formula_expression` (String) A string expression built from queries, formulas, and functions. - -Optional: - -- `alias` (String) An expression alias. - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.scatterplot_table.query` - -Optional: - -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--scatterplot_table--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--scatterplot_table--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--scatterplot_table--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--scatterplot_table--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--scatterplot_table--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--scatterplot_table--query--slo_query)) - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.scatterplot_table.query.apm_dependency_stats_query` - -Required: - -- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `operation_name` (String) Name of operation on service. -- `resource_name` (String) APM resource. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. - -Optional: - -- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.scatterplot_table.query.apm_resource_stats_query` - -Required: - -- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. - -Optional: - -- `group_by` (List of String) Array of fields to group results by. -- `operation_name` (String) Name of operation on service. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. -- `resource_name` (String) APM resource. - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.scatterplot_table.query.event_query` - -Required: - -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--scatterplot_table--query--event_query--compute)) -- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--scatterplot_table--query--event_query--group_by)) -- `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--scatterplot_table--query--event_query--search)) -- `storage` (String) Storage location (private beta). - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.scatterplot_table.query.event_query.compute` - -Required: - -- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `interval` (Number) A time interval in milliseconds. -- `metric` (String) The measurable attribute to compute. - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.scatterplot_table.query.event_query.group_by` - -Required: - -- `facet` (String) The event facet. - -Optional: - -- `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--scatterplot_table--query--event_query--group_by--sort)) - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.scatterplot_table.query.event_query.group_by.sort` - -Required: - -- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `metric` (String) The metric used for sorting group by results. -- `order` (String) Direction of sort. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.scatterplot_table.query.event_query.search` - -Required: - -- `query` (String) The events search string. - - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.scatterplot_table.query.metric_query` - -Required: - -- `name` (String) The name of the query for use in formulas. -- `query` (String) The metrics query definition. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.scatterplot_table.query.process_query` - -Required: - -- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. -- `metric` (String) The process metric name. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. -- `limit` (Number) The number of hits to return. -- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -- `tag_filters` (List of String) An array of tags to filter by. -- `text_filter` (String) The text to use as a filter. - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.scatterplot_table.query.slo_query` - -Required: - -- `data_source` (String) The data source for SLO queries. Valid values are `slo`. -- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. -- `slo_id` (String) ID of an SLO to query. - -Optional: - -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. -- `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - - - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x` - -Optional: - -- `aggregator` (String) Aggregator used for the request. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--apm_query)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--log_query)) -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--process_query)) -- `q` (String) The metric query to use for this widget. -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--security_query)) - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.apm_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--apm_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.apm_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.apm_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--apm_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.apm_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.apm_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.process_query` - -Required: - -- `metric` (String) Your chosen metric. - -Optional: - -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.security_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--security_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.security_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.security_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--x--security_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.security_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.x.security_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y` - -Optional: - -- `aggregator` (String) Aggregator used for the request. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--apm_query)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--log_query)) -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--process_query)) -- `q` (String) The metric query to use for this widget. -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--security_query)) - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.apm_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--apm_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.apm_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.apm_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--apm_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.apm_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.apm_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.process_query` - -Required: - -- `metric` (String) Your chosen metric. - -Optional: - -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.security_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--security_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.security_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.security_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--scatterplot_definition--request--y--security_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.security_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.request.y.security_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.xaxis` - -Optional: - -- `include_zero` (Boolean) Always include zero or fit the axis to the data range. -- `label` (String) The label of the axis to display on the graph. -- `max` (String) Specify the maximum value to show on the Y-axis. -- `min` (String) Specify the minimum value to show on the Y-axis. -- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. - - - -### Nested Schema for `widget.group_definition.widget.scatterplot_definition.yaxis` - -Optional: - -- `include_zero` (Boolean) Always include zero or fit the axis to the data range. -- `label` (String) The label of the axis to display on the graph. -- `max` (String) Specify the maximum value to show on the Y-axis. -- `min` (String) Specify the minimum value to show on the Y-axis. -- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. - - - - -### Nested Schema for `widget.group_definition.widget.service_level_objective_definition` - -Required: - -- `slo_id` (String) The ID of the service level objective used by the widget. -- `time_windows` (List of String) A list of time windows to display in the widget. Valid values are `7d`, `30d`, `90d`, `week_to_date`, `previous_week`, `month_to_date`, `previous_month`, `global_time`. -- `view_mode` (String) The view mode for the widget. Valid values are `overall`, `component`, `both`. -- `view_type` (String) The type of view to use when displaying the widget. Only `detail` is supported. - -Optional: - -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `global_time_target` (String) The global time target of the widget. -- `show_error_budget` (Boolean) Whether to show the error budget or not. -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). - - - -### Nested Schema for `widget.group_definition.widget.servicemap_definition` - -Required: - -- `filters` (List of String) Your environment and primary tag (or `*` if enabled for your account). -- `service` (String) The ID of the service to map. - -Optional: - -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--servicemap_definition--custom_link)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). - - -### Nested Schema for `widget.group_definition.widget.servicemap_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - - -### Nested Schema for `widget.group_definition.widget.slo_list_definition` - -Required: - -- `request` (Block List, Min: 1, Max: 1) A nested block describing the request to use when displaying the widget. Exactly one `request` block is allowed. (see [below for nested schema](#nestedblock--widget--group_definition--widget--slo_list_definition--request)) - -Optional: - -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). - - -### Nested Schema for `widget.group_definition.widget.slo_list_definition.request` - -Required: - -- `query` (Block List, Min: 1, Max: 1) Updated SLO List widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--slo_list_definition--request--query)) -- `request_type` (String) The request type for the SLO List request. Valid values are `slo_list`. - - -### Nested Schema for `widget.group_definition.widget.slo_list_definition.request.query` - -Required: - -- `query_string` (String) Widget query. - -Optional: - -- `limit` (Number) Maximum number of results to display in the table. Defaults to `100`. -- `sort` (Block List, Max: 1) The facet and order to sort the data, for example: `{"column": "status.sli", "order": "desc"}`. (see [below for nested schema](#nestedblock--widget--group_definition--widget--slo_list_definition--request--query--sort)) - - -### Nested Schema for `widget.group_definition.widget.slo_list_definition.request.query.sort` - -Required: - -- `column` (String) The facet path for the column. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - - - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition` - -Required: - -- `size` (String) Size of the individual graphs in the split. -- `source_widget_definition` (Block List, Min: 1, Max: 1) The original widget we are splitting on. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition)) -- `split_config` (Block List, Min: 1, Max: 1) Encapsulates all user choices about how to split a graph. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--split_config)) - -Optional: - -- `has_uniform_y_axes` (Boolean) Normalize y axes across graphs. -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `title` (String) The title of the widget. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition` - -Optional: - -- `change_definition` (Block List, Max: 1) The definition for a Change widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition)) -- `geomap_definition` (Block List, Max: 1) The definition for a Geomap widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition)) -- `query_table_definition` (Block List, Max: 1) The definition for a Query Table widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition)) -- `query_value_definition` (Block List, Max: 1) The definition for a Query Value widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition)) -- `scatterplot_definition` (Block List, Max: 1) The definition for a Scatterplot widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition)) -- `sunburst_definition` (Block List, Max: 1) The definition for a Sunburst widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition)) -- `timeseries_definition` (Block List, Max: 1) The definition for a Timeseries widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition)) -- `toplist_definition` (Block List, Max: 1) The definition for a Toplist widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition)) -- `treemap_definition` (Block List, Max: 1) The definition for a Treemap widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition` - -Optional: - -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--custom_link)) -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple request blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the request block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request` - -Optional: - -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--apm_query)) -- `change_type` (String) Whether to show absolute or relative change. Valid values are `absolute`, `relative`. -- `compare_to` (String) Choose from when to compare current data to. Valid values are `hour_before`, `day_before`, `week_before`, `month_before`. -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--formula)) -- `increase_good` (Boolean) A Boolean indicating whether an increase in the value is good (displayed in green) or not (displayed in red). -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--log_query)) -- `order_by` (String) What to order by. Valid values are `change`, `name`, `present`, `past`. -- `order_dir` (String) Widget sorting method. Valid values are `asc`, `desc`. -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--process_query)) -- `q` (String) The metric query to use for this widget. -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--query)) -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--security_query)) -- `show_present` (Boolean) If set to `true`, displays the current value. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.apm_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--apm_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.apm_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.apm_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--apm_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.apm_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.apm_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.formula` - -Required: - -- `formula_expression` (String) A string expression built from queries, formulas, and functions. - -Optional: - -- `alias` (String) An expression alias. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--formula--conditional_formats)) -- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--formula--limit)) -- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--formula--style)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.formula.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.formula.limit` - -Optional: - -- `count` (Number) The number of results to return. -- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.formula.style` - -Optional: - -- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. -- `palette_index` (Number) Index specifying which color to use within the palette. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.process_query` - -Required: - -- `metric` (String) Your chosen metric. - -Optional: - -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.query` - -Optional: - -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--query--slo_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.query.apm_dependency_stats_query` - -Required: - -- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `operation_name` (String) Name of operation on service. -- `resource_name` (String) APM resource. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. - -Optional: - -- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.query.apm_resource_stats_query` - -Required: - -- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. - -Optional: - -- `group_by` (List of String) Array of fields to group results by. -- `operation_name` (String) Name of operation on service. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. -- `resource_name` (String) APM resource. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.query.event_query` - -Required: - -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--query--event_query--compute)) -- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--query--event_query--group_by)) -- `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--query--event_query--search)) -- `storage` (String) Storage location (private beta). - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.query.event_query.compute` - -Required: - -- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `interval` (Number) A time interval in milliseconds. -- `metric` (String) The measurable attribute to compute. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.query.event_query.group_by` - -Required: - -- `facet` (String) The event facet. - -Optional: - -- `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--query--event_query--group_by--sort)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.query.event_query.group_by.sort` - -Required: - -- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `metric` (String) The metric used for sorting group by results. -- `order` (String) Direction of sort. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.query.event_query.search` - -Required: - -- `query` (String) The events search string. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.query.metric_query` - -Required: - -- `name` (String) The name of the query for use in formulas. -- `query` (String) The metrics query definition. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.query.process_query` - -Required: - -- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. -- `metric` (String) The process metric name. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. -- `limit` (Number) The number of hits to return. -- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -- `tag_filters` (List of String) An array of tags to filter by. -- `text_filter` (String) The text to use as a filter. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.query.slo_query` - -Required: - -- `data_source` (String) The data source for SLO queries. Valid values are `slo`. -- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. -- `slo_id` (String) ID of an SLO to query. - -Optional: - -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. -- `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.security_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--security_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.security_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.security_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--change_definition--request--security_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.security_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.change_definition.request.security_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition` - -Required: - -- `view` (Block List, Min: 1, Max: 1) The view of the world that the map should render. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--view)) - -Optional: - -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--custom_link)) -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `log_query` or `rum_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request)) -- `style` (Block List, Max: 1) The style of the widget graph. One nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--style)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.view` - -Required: - -- `focus` (String) The two-letter ISO code of a country to focus the map on (or `WORLD`). - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request` - -Optional: - -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--formula)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--log_query)) -- `q` (String) The metric query to use for this widget. -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query)) -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--rum_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.formula` - -Required: - -- `formula_expression` (String) A string expression built from queries, formulas, and functions. - -Optional: - -- `alias` (String) An expression alias. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--formula--conditional_formats)) -- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--formula--limit)) -- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--formula--style)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.formula.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.formula.limit` - -Optional: - -- `count` (Number) The number of results to return. -- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.formula.style` - -Optional: - -- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. -- `palette_index` (Number) Index specifying which color to use within the palette. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.query` - -Optional: - -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--slo_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.apm_dependency_stats_query` - -Required: - -- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `operation_name` (String) Name of operation on service. -- `resource_name` (String) APM resource. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. - -Optional: - -- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.apm_resource_stats_query` - -Required: - -- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. - -Optional: - -- `group_by` (List of String) Array of fields to group results by. -- `operation_name` (String) Name of operation on service. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. -- `resource_name` (String) APM resource. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.event_query` - -Required: - -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--event_query--compute)) -- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--event_query--group_by)) -- `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--event_query--search)) -- `storage` (String) Storage location (private beta). - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.event_query.compute` - -Required: - -- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `interval` (Number) A time interval in milliseconds. -- `metric` (String) The measurable attribute to compute. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.event_query.group_by` - -Required: - -- `facet` (String) The event facet. - -Optional: - -- `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--event_query--group_by--sort)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.event_query.group_by.sort` - -Required: - -- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `metric` (String) The metric used for sorting group by results. -- `order` (String) Direction of sort. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.event_query.search` - -Required: - -- `query` (String) The events search string. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.metric_query` - -Required: - -- `name` (String) The name of the query for use in formulas. -- `query` (String) The metrics query definition. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.process_query` - -Required: - -- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. -- `metric` (String) The process metric name. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. -- `limit` (Number) The number of hits to return. -- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -- `tag_filters` (List of String) An array of tags to filter by. -- `text_filter` (String) The text to use as a filter. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.slo_query` - -Required: - -- `data_source` (String) The data source for SLO queries. Valid values are `slo`. -- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. -- `slo_id` (String) ID of an SLO to query. - -Optional: - -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. -- `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--geomap_definition--request--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.request.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.geomap_definition.style` - -Required: - -- `palette` (String) The color palette to apply to the widget. -- `palette_flip` (Boolean) A Boolean indicating whether to flip the palette tones. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition` - -Optional: - -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--custom_link)) -- `has_search_bar` (String) Controls the display of the search bar. Valid values are `always`, `never`, `auto`. -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query`, `apm_stats_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request` - -Optional: - -- `aggregator` (String) The aggregator to use for time aggregation. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. -- `alias` (String) The alias for the column name (defaults to metric name). -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--apm_query)) -- `apm_stats_query` (Block List, Max: 1) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--apm_stats_query)) -- `cell_display_mode` (List of String) A list of display modes for each table cell. List items one of `number`, `bar`. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background, depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--conditional_formats)) -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--formula)) -- `limit` (Number) The number of lines to show in the table. -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--log_query)) -- `order` (String) The sort order for the rows. Valid values are `asc`, `desc`. -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--process_query)) -- `q` (String) The metric query to use for this widget. -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query)) -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--security_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.apm_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--apm_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.apm_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.apm_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--apm_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.apm_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.apm_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.apm_stats_query` - -Required: - -- `env` (String) The environment name. -- `name` (String) The operation name associated with the service. -- `primary_tag` (String) The organization's host group name and value. -- `row_type` (String) The level of detail for the request. Valid values are `service`, `resource`, `span`. -- `service` (String) The service name. - -Optional: - -- `columns` (Block List) Column properties used by the front end for display. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--apm_stats_query--columns)) -- `resource` (String) The resource name. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.apm_stats_query.columns` - -Required: - -- `name` (String) The column name. - -Optional: - -- `alias` (String) A user-assigned alias for the column. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.formula` - -Required: - -- `formula_expression` (String) A string expression built from queries, formulas, and functions. - -Optional: - -- `alias` (String) An expression alias. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--formula--conditional_formats)) -- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--formula--limit)) -- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--formula--style)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.formula.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.formula.limit` - -Optional: - -- `count` (Number) The number of results to return. -- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.formula.style` - -Optional: - -- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. -- `palette_index` (Number) Index specifying which color to use within the palette. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.process_query` - -Required: - -- `metric` (String) Your chosen metric. - -Optional: - -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.query` - -Optional: - -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--slo_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.apm_dependency_stats_query` - -Required: - -- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `operation_name` (String) Name of operation on service. -- `resource_name` (String) APM resource. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. - -Optional: - -- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.apm_resource_stats_query` - -Required: - -- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. - -Optional: - -- `group_by` (List of String) Array of fields to group results by. -- `operation_name` (String) Name of operation on service. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. -- `resource_name` (String) APM resource. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.event_query` - -Required: - -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--event_query--compute)) -- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--event_query--group_by)) -- `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--event_query--search)) -- `storage` (String) Storage location (private beta). - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.event_query.compute` - -Required: - -- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `interval` (Number) A time interval in milliseconds. -- `metric` (String) The measurable attribute to compute. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.event_query.group_by` - -Required: - -- `facet` (String) The event facet. - -Optional: - -- `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--event_query--group_by--sort)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.event_query.group_by.sort` - -Required: - -- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `metric` (String) The metric used for sorting group by results. -- `order` (String) Direction of sort. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.event_query.search` - -Required: - -- `query` (String) The events search string. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.metric_query` - -Required: - -- `name` (String) The name of the query for use in formulas. -- `query` (String) The metrics query definition. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.process_query` - -Required: - -- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. -- `metric` (String) The process metric name. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. -- `limit` (Number) The number of hits to return. -- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -- `tag_filters` (List of String) An array of tags to filter by. -- `text_filter` (String) The text to use as a filter. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.slo_query` - -Required: - -- `data_source` (String) The data source for SLO queries. Valid values are `slo`. -- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. -- `slo_id` (String) ID of an SLO to query. - -Optional: - -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. -- `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.security_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--security_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.security_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.security_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_table_definition--request--security_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.security_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_table_definition.request.security_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition` - -Optional: - -- `autoscale` (Boolean) A Boolean indicating whether to automatically scale the tile. -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--custom_link)) -- `custom_unit` (String) The unit for the value displayed in the widget. -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `precision` (Number) The precision to use when displaying the tile. -- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request)) -- `text_align` (String) The alignment of the widget's text. Valid values are `center`, `left`, `right`. -- `timeseries_background` (Block List, Max: 1) Set a timeseries on the widget background. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--timeseries_background)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request` - -Optional: - -- `aggregator` (String) The aggregator to use for time aggregation. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--apm_query)) -- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--audit_query)) -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--conditional_formats)) -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--formula)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--log_query)) -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--process_query)) -- `q` (String) The metric query to use for this widget. -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query)) -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--security_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.apm_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--apm_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.apm_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.apm_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--apm_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.apm_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.apm_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.audit_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--audit_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--audit_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--audit_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.audit_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.audit_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--audit_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.audit_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.audit_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.formula` - -Required: - -- `formula_expression` (String) A string expression built from queries, formulas, and functions. - -Optional: - -- `alias` (String) An expression alias. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--formula--conditional_formats)) -- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--formula--limit)) -- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--formula--style)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.formula.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.formula.limit` - -Optional: - -- `count` (Number) The number of results to return. -- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.formula.style` - -Optional: - -- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. -- `palette_index` (Number) Index specifying which color to use within the palette. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.process_query` - -Required: - -- `metric` (String) Your chosen metric. - -Optional: - -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.query` - -Optional: - -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--slo_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.apm_dependency_stats_query` - -Required: - -- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `operation_name` (String) Name of operation on service. -- `resource_name` (String) APM resource. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. - -Optional: - -- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.apm_resource_stats_query` - -Required: - -- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. - -Optional: - -- `group_by` (List of String) Array of fields to group results by. -- `operation_name` (String) Name of operation on service. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. -- `resource_name` (String) APM resource. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.event_query` - -Required: - -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--event_query--compute)) -- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--event_query--group_by)) -- `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--event_query--search)) -- `storage` (String) Storage location (private beta). - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.event_query.compute` - -Required: - -- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `interval` (Number) A time interval in milliseconds. -- `metric` (String) The measurable attribute to compute. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.event_query.group_by` - -Required: - -- `facet` (String) The event facet. - -Optional: - -- `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--event_query--group_by--sort)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.event_query.group_by.sort` - -Required: - -- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `metric` (String) The metric used for sorting group by results. -- `order` (String) Direction of sort. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.event_query.search` - -Required: - -- `query` (String) The events search string. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.metric_query` - -Required: - -- `name` (String) The name of the query for use in formulas. -- `query` (String) The metrics query definition. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.process_query` - -Required: - -- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. -- `metric` (String) The process metric name. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. -- `limit` (Number) The number of hits to return. -- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -- `tag_filters` (List of String) An array of tags to filter by. -- `text_filter` (String) The text to use as a filter. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.slo_query` - -Required: - -- `data_source` (String) The data source for SLO queries. Valid values are `slo`. -- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. -- `slo_id` (String) ID of an SLO to query. - -Optional: - -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. -- `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.security_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--security_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.security_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.security_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--request--security_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.security_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.request.security_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.timeseries_background` - -Required: - -- `type` (String) Whether the Timeseries is made using an area or bars. Valid values are `bars`, `area`. - -Optional: - -- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--query_value_definition--timeseries_background--yaxis)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.query_value_definition.timeseries_background.yaxis` - -Optional: - -- `include_zero` (Boolean) Always include zero or fit the axis to the data range. -- `label` (String) The label of the axis to display on the graph. -- `max` (String) Specify the maximum value to show on the Y-axis. -- `min` (String) Specify the minimum value to show on the Y-axis. -- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. - - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition` - -Optional: - -- `color_by_groups` (List of String) List of groups used for colors. -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--custom_link)) -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `request` (Block List, Max: 1) A nested block describing the request to use when displaying the widget. Exactly one `request` block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). -- `xaxis` (Block List, Max: 1) A nested block describing the X-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--xaxis)) -- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--yaxis)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request` - -Optional: - -- `scatterplot_table` (Block List) Scatterplot request containing formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table)) -- `x` (Block List) The query used for the X-Axis. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query`, `apm_stats_query` or `process_query` is required within the block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x)) -- `y` (Block List) The query used for the Y-Axis. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query`, `apm_stats_query` or `process_query` is required within the block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table` - -Optional: - -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--formula)) -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.formula` - -Required: - -- `dimension` (String) Dimension of the Scatterplot. Valid values are `x`, `y`, `radius`, `color`. -- `formula_expression` (String) A string expression built from queries, formulas, and functions. - -Optional: - -- `alias` (String) An expression alias. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query` - -Optional: - -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--slo_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.apm_dependency_stats_query` - -Required: - -- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `operation_name` (String) Name of operation on service. -- `resource_name` (String) APM resource. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. - -Optional: - -- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.apm_resource_stats_query` - -Required: - -- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. - -Optional: - -- `group_by` (List of String) Array of fields to group results by. -- `operation_name` (String) Name of operation on service. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. -- `resource_name` (String) APM resource. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.event_query` - -Required: - -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--event_query--compute)) -- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--event_query--group_by)) -- `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--event_query--search)) -- `storage` (String) Storage location (private beta). - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.event_query.compute` - -Required: - -- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `interval` (Number) A time interval in milliseconds. -- `metric` (String) The measurable attribute to compute. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.event_query.group_by` - -Required: - -- `facet` (String) The event facet. - -Optional: - -- `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--event_query--group_by--sort)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.event_query.group_by.sort` - -Required: - -- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `metric` (String) The metric used for sorting group by results. -- `order` (String) Direction of sort. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.event_query.search` - -Required: - -- `query` (String) The events search string. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.metric_query` - -Required: - -- `name` (String) The name of the query for use in formulas. -- `query` (String) The metrics query definition. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.process_query` - -Required: - -- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. -- `metric` (String) The process metric name. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. -- `limit` (Number) The number of hits to return. -- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -- `tag_filters` (List of String) An array of tags to filter by. -- `text_filter` (String) The text to use as a filter. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.slo_query` - -Required: - -- `data_source` (String) The data source for SLO queries. Valid values are `slo`. -- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. -- `slo_id` (String) ID of an SLO to query. - -Optional: - -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. -- `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x` - -Optional: - -- `aggregator` (String) Aggregator used for the request. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--apm_query)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--log_query)) -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--process_query)) -- `q` (String) The metric query to use for this widget. -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--security_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.apm_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--apm_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.apm_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.apm_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--apm_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.apm_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.apm_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.process_query` - -Required: - -- `metric` (String) Your chosen metric. - -Optional: - -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.security_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--security_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.security_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.security_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--security_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.security_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.security_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y` - -Optional: - -- `aggregator` (String) Aggregator used for the request. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--apm_query)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--log_query)) -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--process_query)) -- `q` (String) The metric query to use for this widget. -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--security_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.apm_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--apm_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.apm_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.apm_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--apm_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.apm_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.apm_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.process_query` - -Required: - -- `metric` (String) Your chosen metric. - -Optional: - -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.security_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--security_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.security_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.security_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--security_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.security_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.security_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.xaxis` - -Optional: - -- `include_zero` (Boolean) Always include zero or fit the axis to the data range. -- `label` (String) The label of the axis to display on the graph. -- `max` (String) Specify the maximum value to show on the Y-axis. -- `min` (String) Specify the minimum value to show on the Y-axis. -- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.scatterplot_definition.yaxis` - -Optional: - -- `include_zero` (Boolean) Always include zero or fit the axis to the data range. -- `label` (String) The label of the axis to display on the graph. -- `max` (String) Specify the maximum value to show on the Y-axis. -- `min` (String) Specify the minimum value to show on the Y-axis. -- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition` - -Optional: - -- `custom_link` (Block List) Nested block describing a custom link. Multiple `custom_link` blocks are allowed with the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--custom_link)) -- `hide_total` (Boolean) Whether or not to show the total value in the widget. -- `legend_inline` (Block List, Max: 1) Used to configure the inline legend. Cannot be used in conjunction with legend_table. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--legend_inline)) -- `legend_table` (Block List, Max: 1) Used to configure the table legend. Cannot be used in conjunction with legend_inline. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--legend_table)) -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `request` (Block List) Nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed with the structure below (exactly one of `q`, `log_query` or `rum_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. One of `left`, `center`, or `right`. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title. Default is 16. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.legend_inline` - -Required: - -- `type` (String) The type of legend (inline or automatic). Valid values are `inline`, `automatic`. - -Optional: - -- `hide_percent` (Boolean) Whether to hide the percentages of the groups. -- `hide_value` (Boolean) Whether to hide the values of the groups. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.legend_table` - -Required: - -- `type` (String) The type of legend (table or none). Valid values are `table`, `none`. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request` - -Optional: - -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--apm_query)) -- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--audit_query)) -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--formula)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--log_query)) -- `network_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--network_query)) -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--process_query)) -- `q` (String) The metric query to use for this widget. -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query)) -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--security_query)) -- `style` (Block List, Max: 1) Define style for the widget's request. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--style)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.apm_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--apm_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.apm_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.apm_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--apm_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.apm_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.apm_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.audit_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--audit_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--audit_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--audit_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.audit_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.audit_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--audit_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.audit_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.audit_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.formula` - -Required: - -- `formula_expression` (String) A string expression built from queries, formulas, and functions. - -Optional: - -- `alias` (String) An expression alias. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--formula--conditional_formats)) -- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--formula--limit)) -- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--formula--style)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.formula.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.formula.limit` - -Optional: - -- `count` (Number) The number of results to return. -- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.formula.style` - -Optional: - -- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. -- `palette_index` (Number) Index specifying which color to use within the palette. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.network_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--network_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--network_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--network_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.network_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.network_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--network_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.network_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.network_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.process_query` - -Required: - -- `metric` (String) Your chosen metric. - -Optional: - -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query` - -Optional: - -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--slo_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.apm_dependency_stats_query` - -Required: - -- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `operation_name` (String) Name of operation on service. -- `resource_name` (String) APM resource. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. - -Optional: - -- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.apm_resource_stats_query` - -Required: - -- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. - -Optional: - -- `group_by` (List of String) Array of fields to group results by. -- `operation_name` (String) Name of operation on service. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. -- `resource_name` (String) APM resource. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.event_query` - -Required: - -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--event_query--compute)) -- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--event_query--group_by)) -- `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--event_query--search)) -- `storage` (String) Storage location (private beta). - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.event_query.compute` - -Required: - -- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `interval` (Number) A time interval in milliseconds. -- `metric` (String) The measurable attribute to compute. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.event_query.group_by` - -Required: - -- `facet` (String) The event facet. - -Optional: - -- `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--event_query--group_by--sort)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.event_query.group_by.sort` - -Required: - -- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `metric` (String) The metric used for sorting group by results. -- `order` (String) Direction of sort. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.event_query.search` - -Required: - -- `query` (String) The events search string. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.metric_query` - -Required: - -- `name` (String) The name of the query for use in formulas. -- `query` (String) The metrics query definition. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.process_query` - -Required: - -- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. -- `metric` (String) The process metric name. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. -- `limit` (Number) The number of hits to return. -- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -- `tag_filters` (List of String) An array of tags to filter by. -- `text_filter` (String) The text to use as a filter. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.slo_query` - -Required: - -- `data_source` (String) The data source for SLO queries. Valid values are `slo`. -- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. -- `slo_id` (String) ID of an SLO to query. - -Optional: - -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. -- `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.security_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--security_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.security_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.security_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--security_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.security_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.security_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.sunburst_definition.request.style` - -Optional: - -- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. - - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition` - -Optional: - -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--custom_link)) -- `event` (Block List) The definition of the event to overlay on the graph. Multiple `event` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--event)) -- `legend_columns` (Set of String) A list of columns to display in the legend. Valid values are `value`, `avg`, `sum`, `min`, `max`. -- `legend_layout` (String) The layout of the legend displayed in the widget. Valid values are `auto`, `horizontal`, `vertical`. -- `legend_size` (String) The size of the legend displayed in the widget. -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `marker` (Block List) A nested block describing the marker to use when displaying the widget. The structure of this block is described below. Multiple `marker` blocks are allowed within a given `tile_def` block. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--marker)) -- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `network_query`, `security_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request)) -- `right_yaxis` (Block List, Max: 1) A nested block describing the right Y-Axis Controls. See the `on_right_yaxis` property for which request will use this axis. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--right_yaxis)) -- `show_legend` (Boolean) Whether or not to show the legend on this widget. -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). -- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--yaxis)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.event` - -Required: - -- `q` (String) The event query to use in the widget. - -Optional: - -- `tags_execution` (String) The execution method for multi-value filters. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.marker` - -Required: - -- `value` (String) A mathematical expression describing the marker, for example: `y > 1`, `-5 < y < 0`, `y = 19`. - -Optional: - -- `display_type` (String) How the marker lines are displayed, options are one of {`error`, `warning`, `info`, `ok`} combined with one of {`dashed`, `solid`, `bold`}. Example: `error dashed`. -- `label` (String) A label for the line or range. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request` - -Optional: - -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--apm_query)) -- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--audit_query)) -- `display_type` (String) How to display the marker lines. Valid values are `area`, `bars`, `line`, `overlay`. -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--formula)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--log_query)) -- `metadata` (Block List) Used to define expression aliases. Multiple `metadata` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--metadata)) -- `network_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--network_query)) -- `on_right_yaxis` (Boolean) A Boolean indicating whether the request uses the right or left Y-Axis. -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--process_query)) -- `q` (String) The metric query to use for this widget. -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query)) -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--security_query)) -- `style` (Block List, Max: 1) The style of the widget graph. Exactly one `style` block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--style)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.apm_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--apm_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.apm_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.apm_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--apm_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.apm_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.apm_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.audit_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--audit_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--audit_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--audit_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.audit_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.audit_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--audit_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.audit_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.audit_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.formula` - -Required: - -- `formula_expression` (String) A string expression built from queries, formulas, and functions. - -Optional: - -- `alias` (String) An expression alias. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--formula--conditional_formats)) -- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--formula--limit)) -- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--formula--style)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.formula.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.formula.limit` - -Optional: - -- `count` (Number) The number of results to return. -- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.formula.style` - -Optional: - -- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. -- `palette_index` (Number) Index specifying which color to use within the palette. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.metadata` - -Required: - -- `expression` (String) The expression name. - -Optional: - -- `alias_name` (String) The expression alias. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.network_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--network_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--network_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--network_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.network_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.network_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--network_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.network_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.network_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.process_query` - -Required: - -- `metric` (String) Your chosen metric. - -Optional: - -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query` - -Optional: - -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--slo_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.apm_dependency_stats_query` - -Required: - -- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `operation_name` (String) Name of operation on service. -- `resource_name` (String) APM resource. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. - -Optional: - -- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.apm_resource_stats_query` - -Required: - -- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. - -Optional: - -- `group_by` (List of String) Array of fields to group results by. -- `operation_name` (String) Name of operation on service. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. -- `resource_name` (String) APM resource. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.event_query` - -Required: - -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--event_query--compute)) -- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--event_query--group_by)) -- `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--event_query--search)) -- `storage` (String) Storage location (private beta). - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.event_query.compute` - -Required: - -- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `interval` (Number) A time interval in milliseconds. -- `metric` (String) The measurable attribute to compute. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.event_query.group_by` - -Required: - -- `facet` (String) The event facet. - -Optional: - -- `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--event_query--group_by--sort)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.event_query.group_by.sort` - -Required: - -- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `metric` (String) The metric used for sorting group by results. -- `order` (String) Direction of sort. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.event_query.search` - -Required: - -- `query` (String) The events search string. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.metric_query` - -Required: - -- `name` (String) The name of the query for use in formulas. -- `query` (String) The metrics query definition. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.process_query` - -Required: - -- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. -- `metric` (String) The process metric name. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. -- `limit` (Number) The number of hits to return. -- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -- `tag_filters` (List of String) An array of tags to filter by. -- `text_filter` (String) The text to use as a filter. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.slo_query` - -Required: - -- `data_source` (String) The data source for SLO queries. Valid values are `slo`. -- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. -- `slo_id` (String) ID of an SLO to query. - -Optional: - -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. -- `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.security_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--security_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.security_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.security_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--security_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.security_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.security_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.request.style` - -Optional: - -- `line_type` (String) The type of lines displayed. Valid values are `dashed`, `dotted`, `solid`. -- `line_width` (String) The width of line displayed. Valid values are `normal`, `thick`, `thin`. -- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.right_yaxis` - -Optional: - -- `include_zero` (Boolean) Always include zero or fit the axis to the data range. -- `label` (String) The label of the axis to display on the graph. -- `max` (String) Specify the maximum value to show on the Y-axis. -- `min` (String) Specify the minimum value to show on the Y-axis. -- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.timeseries_definition.yaxis` - -Optional: - -- `include_zero` (Boolean) Always include zero or fit the axis to the data range. -- `label` (String) The label of the axis to display on the graph. -- `max` (String) Specify the maximum value to show on the Y-axis. -- `min` (String) Specify the minimum value to show on the Y-axis. -- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition` - -Optional: - -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--custom_link)) -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request` - -Optional: - -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--apm_query)) -- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--audit_query)) -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background, depending on a rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--conditional_formats)) -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--formula)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--log_query)) -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--process_query)) -- `q` (String) The metric query to use for this widget. -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query)) -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--security_query)) -- `style` (Block List, Max: 1) Define request for the widget's style. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--style)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.apm_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--apm_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.apm_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.apm_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--apm_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.apm_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.apm_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.audit_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--audit_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--audit_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--audit_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.audit_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.audit_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--audit_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.audit_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.audit_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.formula` - -Required: - -- `formula_expression` (String) A string expression built from queries, formulas, and functions. - -Optional: - -- `alias` (String) An expression alias. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--formula--conditional_formats)) -- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--formula--limit)) -- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--formula--style)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.formula.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.formula.limit` - -Optional: - -- `count` (Number) The number of results to return. -- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.formula.style` - -Optional: - -- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. -- `palette_index` (Number) Index specifying which color to use within the palette. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.process_query` - -Required: - -- `metric` (String) Your chosen metric. - -Optional: - -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.query` - -Optional: - -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--slo_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.apm_dependency_stats_query` - -Required: - -- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `operation_name` (String) Name of operation on service. -- `resource_name` (String) APM resource. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. - -Optional: - -- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.apm_resource_stats_query` - -Required: - -- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. - -Optional: - -- `group_by` (List of String) Array of fields to group results by. -- `operation_name` (String) Name of operation on service. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. -- `resource_name` (String) APM resource. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.event_query` - -Required: - -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--event_query--compute)) -- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--event_query--group_by)) -- `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--event_query--search)) -- `storage` (String) Storage location (private beta). - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.event_query.compute` - -Required: - -- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `interval` (Number) A time interval in milliseconds. -- `metric` (String) The measurable attribute to compute. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.event_query.group_by` - -Required: - -- `facet` (String) The event facet. - -Optional: - -- `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--event_query--group_by--sort)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.event_query.group_by.sort` - -Required: - -- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `metric` (String) The metric used for sorting group by results. -- `order` (String) Direction of sort. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.event_query.search` - -Required: - -- `query` (String) The events search string. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.metric_query` - -Required: - -- `name` (String) The name of the query for use in formulas. -- `query` (String) The metrics query definition. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.process_query` - -Required: - -- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. -- `metric` (String) The process metric name. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. -- `limit` (Number) The number of hits to return. -- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -- `tag_filters` (List of String) An array of tags to filter by. -- `text_filter` (String) The text to use as a filter. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.slo_query` - -Required: - -- `data_source` (String) The data source for SLO queries. Valid values are `slo`. -- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. -- `slo_id` (String) ID of an SLO to query. - -Optional: - -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. -- `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.security_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--security_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.security_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.security_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--toplist_definition--request--security_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.security_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.security_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.toplist_definition.request.style` - -Optional: - -- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. - - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition` - -Optional: - -- `request` (Block List) Nested block describing the request to use when displaying the widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request)) -- `title` (String) The title of the widget. - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request` - -Optional: - -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request--formula)) -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request.formula` - -Required: - -- `formula_expression` (String) A string expression built from queries, formulas, and functions. - -Optional: - -- `alias` (String) An expression alias. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request--formula--conditional_formats)) -- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request--formula--limit)) -- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request--formula--style)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request.formula.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request.formula.limit` - -Optional: - -- `count` (Number) The number of results to return. -- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request.formula.style` - -Optional: - -- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. -- `palette_index` (Number) Index specifying which color to use within the palette. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request.query` - -Optional: - -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--slo_query)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.apm_dependency_stats_query` - -Required: - -- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `operation_name` (String) Name of operation on service. -- `resource_name` (String) APM resource. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. - -Optional: - -- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.apm_resource_stats_query` - -Required: - -- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. - -Optional: - -- `group_by` (List of String) Array of fields to group results by. -- `operation_name` (String) Name of operation on service. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. -- `resource_name` (String) APM resource. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.event_query` - -Required: - -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--event_query--compute)) -- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--event_query--group_by)) -- `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--event_query--search)) -- `storage` (String) Storage location (private beta). - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.event_query.compute` - -Required: - -- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `interval` (Number) A time interval in milliseconds. -- `metric` (String) The measurable attribute to compute. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.event_query.group_by` - -Required: - -- `facet` (String) The event facet. - -Optional: - -- `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--event_query--group_by--sort)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.event_query.group_by.sort` - -Required: - -- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `metric` (String) The metric used for sorting group by results. -- `order` (String) Direction of sort. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.event_query.search` - -Required: - -- `query` (String) The events search string. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.metric_query` - -Required: - -- `name` (String) The name of the query for use in formulas. -- `query` (String) The metrics query definition. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.process_query` - -Required: - -- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. -- `metric` (String) The process metric name. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. -- `limit` (Number) The number of hits to return. -- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -- `tag_filters` (List of String) An array of tags to filter by. -- `text_filter` (String) The text to use as a filter. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.slo_query` - -Required: - -- `data_source` (String) The data source for SLO queries. Valid values are `slo`. -- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. -- `slo_id` (String) ID of an SLO to query. - -Optional: - -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. -- `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - - - - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.split_config` - -Required: - -- `sort` (Block List, Min: 1, Max: 1) Controls the order in which graphs appear in the split. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--split_config--sort)) -- `split_dimensions` (Block List, Min: 1, Max: 1) The property by which the graph splits (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--split_config--split_dimensions)) - -Optional: - -- `limit` (Number) Maximum number of graphs to display in the widget. -- `static_splits` (Block List, Max: 100) The property by which the graph splits (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--split_config--static_splits)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.split_config.sort` - -Required: - -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `compute` (Block List, Max: 1) Defines the metric and aggregation used as the sort value (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--split_config--sort--compute)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.split_config.sort.compute` - -Required: - -- `metric` (String) The metric to use for sorting graphs. - -Optional: - -- `aggregation` (String) How to aggregate the sort metric for the purposes of ordering. - - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.split_config.split_dimensions` - -Required: - -- `one_graph_per` (String) The system interprets this attribute differently depending on the data source of the query being split. For metrics, it's a tag. For the events platform, it's an attribute or tag. - - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.split_config.static_splits` - -Required: - -- `split_vector` (Block List, Min: 1) The split graph list contains a graph for each value of the split dimension. (see [below for nested schema](#nestedblock--widget--group_definition--widget--split_graph_definition--split_config--static_splits--split_vector)) - - -### Nested Schema for `widget.group_definition.widget.split_graph_definition.split_config.static_splits.split_vector` - -Required: - -- `tag_key` (String) -- `tag_values` (List of String) - - - - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition` - -Optional: - -- `custom_link` (Block List) Nested block describing a custom link. Multiple `custom_link` blocks are allowed with the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--custom_link)) -- `hide_total` (Boolean) Whether or not to show the total value in the widget. -- `legend_inline` (Block List, Max: 1) Used to configure the inline legend. Cannot be used in conjunction with legend_table. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--legend_inline)) -- `legend_table` (Block List, Max: 1) Used to configure the table legend. Cannot be used in conjunction with legend_inline. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--legend_table)) -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `request` (Block List) Nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed with the structure below (exactly one of `q`, `log_query` or `rum_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. One of `left`, `center`, or `right`. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title. Default is 16. - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.legend_inline` - -Required: - -- `type` (String) The type of legend (inline or automatic). Valid values are `inline`, `automatic`. - -Optional: - -- `hide_percent` (Boolean) Whether to hide the percentages of the groups. -- `hide_value` (Boolean) Whether to hide the values of the groups. - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.legend_table` - -Required: - -- `type` (String) The type of legend (table or none). Valid values are `table`, `none`. - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request` - -Optional: - -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--apm_query)) -- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--audit_query)) -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--formula)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--log_query)) -- `network_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--network_query)) -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--process_query)) -- `q` (String) The metric query to use for this widget. -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--query)) -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--security_query)) -- `style` (Block List, Max: 1) Define style for the widget's request. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--style)) - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.apm_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--apm_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.apm_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.apm_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--apm_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.apm_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.apm_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.audit_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--audit_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--audit_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--audit_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.audit_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.audit_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--audit_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.audit_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.audit_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.formula` - -Required: - -- `formula_expression` (String) A string expression built from queries, formulas, and functions. - -Optional: - -- `alias` (String) An expression alias. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--formula--conditional_formats)) -- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--formula--limit)) -- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--formula--style)) - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.formula.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.formula.limit` - -Optional: - -- `count` (Number) The number of results to return. -- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.formula.style` - -Optional: - -- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. -- `palette_index` (Number) Index specifying which color to use within the palette. - - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.network_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--network_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--network_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--network_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.network_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.network_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--network_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.network_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.network_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.process_query` - -Required: - -- `metric` (String) Your chosen metric. - -Optional: - -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.query` - -Optional: - -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--query--slo_query)) - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.query.apm_dependency_stats_query` - -Required: - -- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `operation_name` (String) Name of operation on service. -- `resource_name` (String) APM resource. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. - -Optional: - -- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.query.apm_resource_stats_query` - -Required: - -- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. - -Optional: - -- `group_by` (List of String) Array of fields to group results by. -- `operation_name` (String) Name of operation on service. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. -- `resource_name` (String) APM resource. - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.query.event_query` - -Required: - -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--query--event_query--compute)) -- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--query--event_query--group_by)) -- `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--query--event_query--search)) -- `storage` (String) Storage location (private beta). - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.query.event_query.compute` - -Required: - -- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `interval` (Number) A time interval in milliseconds. -- `metric` (String) The measurable attribute to compute. - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.query.event_query.group_by` - -Required: - -- `facet` (String) The event facet. - -Optional: - -- `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--query--event_query--group_by--sort)) - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.query.event_query.group_by.sort` - -Required: - -- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `metric` (String) The metric used for sorting group by results. -- `order` (String) Direction of sort. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.query.event_query.search` - -Required: - -- `query` (String) The events search string. - - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.query.metric_query` - -Required: - -- `name` (String) The name of the query for use in formulas. -- `query` (String) The metrics query definition. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.query.process_query` - -Required: - -- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. -- `metric` (String) The process metric name. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. -- `limit` (Number) The number of hits to return. -- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -- `tag_filters` (List of String) An array of tags to filter by. -- `text_filter` (String) The text to use as a filter. - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.query.slo_query` - -Required: - -- `data_source` (String) The data source for SLO queries. Valid values are `slo`. -- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. -- `slo_id` (String) ID of an SLO to query. - -Optional: - -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. -- `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.security_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--security_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.security_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.security_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--sunburst_definition--request--security_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.security_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.security_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.sunburst_definition.request.style` - -Optional: - -- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. - - - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition` - -Optional: - -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--custom_link)) -- `event` (Block List) The definition of the event to overlay on the graph. Multiple `event` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--event)) -- `legend_columns` (Set of String) A list of columns to display in the legend. Valid values are `value`, `avg`, `sum`, `min`, `max`. -- `legend_layout` (String) The layout of the legend displayed in the widget. Valid values are `auto`, `horizontal`, `vertical`. -- `legend_size` (String) The size of the legend displayed in the widget. -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `marker` (Block List) A nested block describing the marker to use when displaying the widget. The structure of this block is described below. Multiple `marker` blocks are allowed within a given `tile_def` block. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--marker)) -- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `network_query`, `security_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request)) -- `right_yaxis` (Block List, Max: 1) A nested block describing the right Y-Axis Controls. See the `on_right_yaxis` property for which request will use this axis. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--right_yaxis)) -- `show_legend` (Boolean) Whether or not to show the legend on this widget. -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). -- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--yaxis)) - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.event` - -Required: - -- `q` (String) The event query to use in the widget. - -Optional: - -- `tags_execution` (String) The execution method for multi-value filters. - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.marker` - -Required: - -- `value` (String) A mathematical expression describing the marker, for example: `y > 1`, `-5 < y < 0`, `y = 19`. - -Optional: - -- `display_type` (String) How the marker lines are displayed, options are one of {`error`, `warning`, `info`, `ok`} combined with one of {`dashed`, `solid`, `bold`}. Example: `error dashed`. -- `label` (String) A label for the line or range. - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request` - -Optional: - -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--apm_query)) -- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--audit_query)) -- `display_type` (String) How to display the marker lines. Valid values are `area`, `bars`, `line`, `overlay`. -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--formula)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--log_query)) -- `metadata` (Block List) Used to define expression aliases. Multiple `metadata` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--metadata)) -- `network_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--network_query)) -- `on_right_yaxis` (Boolean) A Boolean indicating whether the request uses the right or left Y-Axis. -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--process_query)) -- `q` (String) The metric query to use for this widget. -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--query)) -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--security_query)) -- `style` (Block List, Max: 1) The style of the widget graph. Exactly one `style` block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--style)) - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.apm_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--apm_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.apm_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.apm_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--apm_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.apm_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.apm_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.audit_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--audit_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--audit_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--audit_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.audit_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.audit_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--audit_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.audit_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.audit_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.formula` - -Required: - -- `formula_expression` (String) A string expression built from queries, formulas, and functions. - -Optional: - -- `alias` (String) An expression alias. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--formula--conditional_formats)) -- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--formula--limit)) -- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--formula--style)) - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.formula.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.formula.limit` - -Optional: - -- `count` (Number) The number of results to return. -- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.formula.style` - -Optional: - -- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. -- `palette_index` (Number) Index specifying which color to use within the palette. - - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.metadata` - -Required: - -- `expression` (String) The expression name. - -Optional: - -- `alias_name` (String) The expression alias. - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.network_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--network_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--network_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--network_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.network_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.network_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--network_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.network_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.network_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.process_query` - -Required: - -- `metric` (String) Your chosen metric. - -Optional: - -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.query` - -Optional: - -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--query--slo_query)) - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.query.apm_dependency_stats_query` - -Required: - -- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `operation_name` (String) Name of operation on service. -- `resource_name` (String) APM resource. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. - -Optional: - -- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.query.apm_resource_stats_query` - -Required: - -- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. - -Optional: - -- `group_by` (List of String) Array of fields to group results by. -- `operation_name` (String) Name of operation on service. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. -- `resource_name` (String) APM resource. - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.query.event_query` - -Required: - -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--query--event_query--compute)) -- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--query--event_query--group_by)) -- `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--query--event_query--search)) -- `storage` (String) Storage location (private beta). - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.query.event_query.compute` - -Required: - -- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `interval` (Number) A time interval in milliseconds. -- `metric` (String) The measurable attribute to compute. - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.query.event_query.group_by` - -Required: - -- `facet` (String) The event facet. - -Optional: - -- `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--query--event_query--group_by--sort)) - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.query.event_query.group_by.sort` - -Required: - -- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `metric` (String) The metric used for sorting group by results. -- `order` (String) Direction of sort. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.query.event_query.search` - -Required: - -- `query` (String) The events search string. - - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.query.metric_query` - -Required: - -- `name` (String) The name of the query for use in formulas. -- `query` (String) The metrics query definition. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.query.process_query` - -Required: - -- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. -- `metric` (String) The process metric name. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. -- `limit` (Number) The number of hits to return. -- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -- `tag_filters` (List of String) An array of tags to filter by. -- `text_filter` (String) The text to use as a filter. - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.query.slo_query` - -Required: - -- `data_source` (String) The data source for SLO queries. Valid values are `slo`. -- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. -- `slo_id` (String) ID of an SLO to query. - -Optional: - -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. -- `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.security_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--security_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.security_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.security_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--timeseries_definition--request--security_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.security_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.security_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.request.style` - -Optional: - -- `line_type` (String) The type of lines displayed. Valid values are `dashed`, `dotted`, `solid`. -- `line_width` (String) The width of line displayed. Valid values are `normal`, `thick`, `thin`. -- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. - - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.right_yaxis` - -Optional: - -- `include_zero` (Boolean) Always include zero or fit the axis to the data range. -- `label` (String) The label of the axis to display on the graph. -- `max` (String) Specify the maximum value to show on the Y-axis. -- `min` (String) Specify the minimum value to show on the Y-axis. -- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. - - - -### Nested Schema for `widget.group_definition.widget.timeseries_definition.yaxis` - -Optional: - -- `include_zero` (Boolean) Always include zero or fit the axis to the data range. -- `label` (String) The label of the axis to display on the graph. -- `max` (String) Specify the maximum value to show on the Y-axis. -- `min` (String) Specify the minimum value to show on the Y-axis. -- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. - - - - -### Nested Schema for `widget.group_definition.widget.toplist_definition` - -Optional: - -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--custom_link)) -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request` - -Optional: - -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--apm_query)) -- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--audit_query)) -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background, depending on a rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--conditional_formats)) -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--formula)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--log_query)) -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--process_query)) -- `q` (String) The metric query to use for this widget. -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--query)) -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--security_query)) -- `style` (Block List, Max: 1) Define request for the widget's style. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--style)) - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.apm_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--apm_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.apm_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.apm_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--apm_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.apm_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.apm_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.audit_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--audit_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--audit_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--audit_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.audit_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.audit_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--audit_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.audit_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.audit_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.formula` - -Required: - -- `formula_expression` (String) A string expression built from queries, formulas, and functions. - -Optional: - -- `alias` (String) An expression alias. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--formula--conditional_formats)) -- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--formula--limit)) -- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--formula--style)) - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.formula.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.formula.limit` - -Optional: - -- `count` (Number) The number of results to return. -- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. - - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.formula.style` - -Optional: - -- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. -- `palette_index` (Number) Index specifying which color to use within the palette. - - - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.process_query` - -Required: - -- `metric` (String) Your chosen metric. - -Optional: - -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. - - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.query` - -Optional: - -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--query--slo_query)) - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.query.apm_dependency_stats_query` - -Required: - -- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `operation_name` (String) Name of operation on service. -- `resource_name` (String) APM resource. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. - -Optional: - -- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.query.apm_resource_stats_query` - -Required: - -- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. - -Optional: - -- `group_by` (List of String) Array of fields to group results by. -- `operation_name` (String) Name of operation on service. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. -- `resource_name` (String) APM resource. - - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.query.event_query` - -Required: - -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--query--event_query--compute)) -- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--query--event_query--group_by)) -- `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--query--event_query--search)) -- `storage` (String) Storage location (private beta). - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.query.event_query.compute` - -Required: - -- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `interval` (Number) A time interval in milliseconds. -- `metric` (String) The measurable attribute to compute. - - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.query.event_query.group_by` - -Required: - -- `facet` (String) The event facet. - -Optional: - -- `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--query--event_query--group_by--sort)) - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.query.event_query.group_by.sort` - -Required: - -- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `metric` (String) The metric used for sorting group by results. -- `order` (String) Direction of sort. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.query.event_query.search` - -Required: - -- `query` (String) The events search string. - - - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.query.metric_query` - -Required: - -- `name` (String) The name of the query for use in formulas. -- `query` (String) The metrics query definition. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.query.process_query` - -Required: - -- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. -- `metric` (String) The process metric name. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. -- `limit` (Number) The number of hits to return. -- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -- `tag_filters` (List of String) An array of tags to filter by. -- `text_filter` (String) The text to use as a filter. - - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.query.slo_query` - -Required: - -- `data_source` (String) The data source for SLO queries. Valid values are `slo`. -- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. -- `slo_id` (String) ID of an SLO to query. - -Optional: - -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. -- `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - - - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.security_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--security_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.security_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.security_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--group_definition--widget--toplist_definition--request--security_query--group_by--sort_query)) - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.security_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.security_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.group_definition.widget.toplist_definition.request.style` - -Optional: - -- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. - - - - - -### Nested Schema for `widget.group_definition.widget.topology_map_definition` - -Optional: - -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--topology_map_definition--custom_link)) -- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple request blocks are allowed using the structure below (`query` and `request_type` are required within the request). (see [below for nested schema](#nestedblock--widget--group_definition--widget--topology_map_definition--request)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). - - -### Nested Schema for `widget.group_definition.widget.topology_map_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - -### Nested Schema for `widget.group_definition.widget.topology_map_definition.request` - -Required: - -- `query` (Block List, Min: 1) The query for a Topology request. (see [below for nested schema](#nestedblock--widget--group_definition--widget--topology_map_definition--request--query)) -- `request_type` (String) The request type for the Topology request ('topology'). Valid values are `topology`. - - -### Nested Schema for `widget.group_definition.widget.topology_map_definition.request.query` - -Required: - -- `data_source` (String) The data source for the Topology request ('service_map' or 'data_streams'). Valid values are `data_streams`, `service_map`. -- `filters` (List of String) Your environment and primary tag (or `*` if enabled for your account). -- `service` (String) The ID of the service to map. - - - - - -### Nested Schema for `widget.group_definition.widget.trace_service_definition` - -Required: - -- `env` (String) APM environment. -- `service` (String) APM service. -- `span_name` (String) APM span name - -Optional: - -- `display_format` (String) The number of columns to display. Valid values are `one_column`, `two_column`, `three_column`. -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `show_breakdown` (Boolean) Whether to show the latency breakdown or not. -- `show_distribution` (Boolean) Whether to show the latency distribution or not. -- `show_errors` (Boolean) Whether to show the error metrics or not. -- `show_hits` (Boolean) Whether to show the hits metrics or not -- `show_latency` (Boolean) Whether to show the latency metrics or not. -- `show_resource_list` (Boolean) Whether to show the resource list or not. -- `size_format` (String) The size of the widget. Valid values are `small`, `medium`, `large`. -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). - - - -### Nested Schema for `widget.group_definition.widget.treemap_definition` - -Optional: - -- `request` (Block List) Nested block describing the request to use when displaying the widget. (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request)) -- `title` (String) The title of the widget. - - -### Nested Schema for `widget.group_definition.widget.treemap_definition.request` - -Optional: - -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request--formula)) -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request--query)) - - -### Nested Schema for `widget.group_definition.widget.treemap_definition.request.formula` - -Required: - -- `formula_expression` (String) A string expression built from queries, formulas, and functions. - -Optional: - -- `alias` (String) An expression alias. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request--formula--conditional_formats)) -- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request--formula--limit)) -- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request--formula--style)) - - -### Nested Schema for `widget.group_definition.widget.treemap_definition.request.formula.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.group_definition.widget.treemap_definition.request.formula.limit` - -Optional: - -- `count` (Number) The number of results to return. -- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. - - - -### Nested Schema for `widget.group_definition.widget.treemap_definition.request.formula.style` - -Optional: - -- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. -- `palette_index` (Number) Index specifying which color to use within the palette. - - - - -### Nested Schema for `widget.group_definition.widget.treemap_definition.request.query` - -Optional: - -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request--query--slo_query)) - - -### Nested Schema for `widget.group_definition.widget.treemap_definition.request.query.apm_dependency_stats_query` - -Required: - -- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `operation_name` (String) Name of operation on service. -- `resource_name` (String) APM resource. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. - -Optional: - -- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - - - -### Nested Schema for `widget.group_definition.widget.treemap_definition.request.query.apm_resource_stats_query` - -Required: - -- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. - -Optional: - -- `group_by` (List of String) Array of fields to group results by. -- `operation_name` (String) Name of operation on service. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. -- `resource_name` (String) APM resource. - - - -### Nested Schema for `widget.group_definition.widget.treemap_definition.request.query.event_query` - -Required: - -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request--query--event_query--compute)) -- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request--query--event_query--group_by)) -- `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request--query--event_query--search)) -- `storage` (String) Storage location (private beta). - - -### Nested Schema for `widget.group_definition.widget.treemap_definition.request.query.event_query.compute` - -Required: - -- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `interval` (Number) A time interval in milliseconds. -- `metric` (String) The measurable attribute to compute. - - - -### Nested Schema for `widget.group_definition.widget.treemap_definition.request.query.event_query.group_by` - -Required: - -- `facet` (String) The event facet. - -Optional: - -- `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--group_definition--widget--treemap_definition--request--query--event_query--group_by--sort)) - - -### Nested Schema for `widget.group_definition.widget.treemap_definition.request.query.event_query.group_by.sort` - -Required: - -- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `metric` (String) The metric used for sorting group by results. -- `order` (String) Direction of sort. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.group_definition.widget.treemap_definition.request.query.event_query.search` - -Required: - -- `query` (String) The events search string. - - - - -### Nested Schema for `widget.group_definition.widget.treemap_definition.request.query.metric_query` - -Required: - -- `name` (String) The name of the query for use in formulas. -- `query` (String) The metrics query definition. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - - - -### Nested Schema for `widget.group_definition.widget.treemap_definition.request.query.process_query` - -Required: - -- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. -- `metric` (String) The process metric name. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. -- `limit` (Number) The number of hits to return. -- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -- `tag_filters` (List of String) An array of tags to filter by. -- `text_filter` (String) The text to use as a filter. - - - -### Nested Schema for `widget.group_definition.widget.treemap_definition.request.query.slo_query` - -Required: - -- `data_source` (String) The data source for SLO queries. Valid values are `slo`. -- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. -- `slo_id` (String) ID of an SLO to query. - -Optional: - -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. -- `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - - - - - - -### Nested Schema for `widget.group_definition.widget.widget_layout` - -Required: - -- `height` (Number) The height of the widget. -- `width` (Number) The width of the widget. -- `x` (Number) The position of the widget on the x (horizontal) axis. Should be greater than or equal to 0. -- `y` (Number) The position of the widget on the y (vertical) axis. Should be greater than or equal to 0. - -Optional: - -- `is_column_break` (Boolean) Whether the widget should be the first one on the second column in high density or not. Only for the new dashboard layout and only one widget in the dashboard should have this property set to `true`. - - - - - -### Nested Schema for `widget.heatmap_definition` - -Optional: - -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--custom_link)) -- `event` (Block List) The definition of the event to overlay on the graph. Multiple `event` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--event)) -- `legend_size` (String) The size of the legend displayed in the widget. -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the request block). (see [below for nested schema](#nestedblock--widget--heatmap_definition--request)) -- `show_legend` (Boolean) Whether or not to show the legend on this widget. -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). -- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--yaxis)) - - -### Nested Schema for `widget.heatmap_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - -### Nested Schema for `widget.heatmap_definition.event` - -Required: - -- `q` (String) The event query to use in the widget. - -Optional: - -- `tags_execution` (String) The execution method for multi-value filters. - - - -### Nested Schema for `widget.heatmap_definition.request` - -Optional: - -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--apm_query)) -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--formula)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--log_query)) -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--process_query)) -- `q` (String) The metric query to use for this widget. -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query)) -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--security_query)) -- `style` (Block List, Max: 1) The style of the widget graph. One nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--style)) - - -### Nested Schema for `widget.heatmap_definition.request.apm_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--apm_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.heatmap_definition.request.apm_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.heatmap_definition.request.apm_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--apm_query--group_by--sort_query)) - - -### Nested Schema for `widget.heatmap_definition.request.apm_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.heatmap_definition.request.apm_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.heatmap_definition.request.formula` - -Required: - -- `formula_expression` (String) A string expression built from queries, formulas, and functions. - -Optional: - -- `alias` (String) An expression alias. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--formula--conditional_formats)) -- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--formula--limit)) -- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--formula--style)) - - -### Nested Schema for `widget.heatmap_definition.request.formula.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.heatmap_definition.request.formula.limit` - -Optional: - -- `count` (Number) The number of results to return. -- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. - - - -### Nested Schema for `widget.heatmap_definition.request.formula.style` - -Optional: - -- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. -- `palette_index` (Number) Index specifying which color to use within the palette. - - - - -### Nested Schema for `widget.heatmap_definition.request.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.heatmap_definition.request.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.heatmap_definition.request.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.heatmap_definition.request.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.heatmap_definition.request.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.heatmap_definition.request.process_query` - -Required: - -- `metric` (String) Your chosen metric. - -Optional: - -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. - - - -### Nested Schema for `widget.heatmap_definition.request.query` - -Optional: - -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--slo_query)) - - -### Nested Schema for `widget.heatmap_definition.request.query.apm_dependency_stats_query` - -Required: - -- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `operation_name` (String) Name of operation on service. -- `resource_name` (String) APM resource. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. - -Optional: - -- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - - - -### Nested Schema for `widget.heatmap_definition.request.query.apm_resource_stats_query` - -Required: - -- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. - -Optional: - -- `group_by` (List of String) Array of fields to group results by. -- `operation_name` (String) Name of operation on service. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. -- `resource_name` (String) APM resource. - - - -### Nested Schema for `widget.heatmap_definition.request.query.event_query` - -Required: - -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--event_query--compute)) -- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--event_query--group_by)) -- `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--event_query--search)) -- `storage` (String) Storage location (private beta). - - -### Nested Schema for `widget.heatmap_definition.request.query.event_query.compute` - -Required: - -- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `interval` (Number) A time interval in milliseconds. -- `metric` (String) The measurable attribute to compute. - - - -### Nested Schema for `widget.heatmap_definition.request.query.event_query.group_by` - -Required: - -- `facet` (String) The event facet. - -Optional: - -- `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--event_query--group_by--sort)) - - -### Nested Schema for `widget.heatmap_definition.request.query.event_query.group_by.sort` - -Required: - -- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `metric` (String) The metric used for sorting group by results. -- `order` (String) Direction of sort. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.heatmap_definition.request.query.event_query.search` - -Required: - -- `query` (String) The events search string. - - - - -### Nested Schema for `widget.heatmap_definition.request.query.metric_query` - -Required: - -- `name` (String) The name of the query for use in formulas. -- `query` (String) The metrics query definition. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - - - -### Nested Schema for `widget.heatmap_definition.request.query.process_query` - -Required: - -- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. -- `metric` (String) The process metric name. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. -- `limit` (Number) The number of hits to return. -- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -- `tag_filters` (List of String) An array of tags to filter by. -- `text_filter` (String) The text to use as a filter. - - - -### Nested Schema for `widget.heatmap_definition.request.query.slo_query` - -Required: - -- `data_source` (String) The data source for SLO queries. Valid values are `slo`. -- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. -- `slo_id` (String) ID of an SLO to query. - -Optional: - -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. -- `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - - - - -### Nested Schema for `widget.heatmap_definition.request.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.heatmap_definition.request.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.heatmap_definition.request.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.heatmap_definition.request.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.heatmap_definition.request.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.heatmap_definition.request.security_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--security_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.heatmap_definition.request.security_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.heatmap_definition.request.security_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--security_query--group_by--sort_query)) - - -### Nested Schema for `widget.heatmap_definition.request.security_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.heatmap_definition.request.security_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.heatmap_definition.request.style` - -Optional: - -- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. - - - - -### Nested Schema for `widget.heatmap_definition.yaxis` - -Optional: - -- `include_zero` (Boolean) Always include zero or fit the axis to the data range. -- `label` (String) The label of the axis to display on the graph. -- `max` (String) Specify the maximum value to show on the Y-axis. -- `min` (String) Specify the minimum value to show on the Y-axis. -- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. - - - - -### Nested Schema for `widget.hostmap_definition` - -Optional: - -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--custom_link)) -- `group` (List of String) The list of tags to group nodes by. -- `no_group_hosts` (Boolean) A Boolean indicating whether to show ungrouped nodes. -- `no_metric_hosts` (Boolean) A Boolean indicating whether to show nodes with no metrics. -- `node_type` (String) The type of node used. Valid values are `host`, `container`. -- `request` (Block List, Max: 1) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request)) -- `scope` (List of String) The list of tags to filter nodes by. -- `style` (Block List, Max: 1) The style of the widget graph. One nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--style)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). - - -### Nested Schema for `widget.hostmap_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - -### Nested Schema for `widget.hostmap_definition.request` - -Optional: - -- `fill` (Block List) The query used to fill the map. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the request block). (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill)) -- `size` (Block List) The query used to size the map. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the request block). (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size)) - - -### Nested Schema for `widget.hostmap_definition.request.fill` - -Optional: - -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--apm_query)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--log_query)) -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--process_query)) -- `q` (String) The metric query to use for this widget. -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--security_query)) - - -### Nested Schema for `widget.hostmap_definition.request.fill.apm_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--apm_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.hostmap_definition.request.fill.apm_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.hostmap_definition.request.fill.apm_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--apm_query--group_by--sort_query)) - - -### Nested Schema for `widget.hostmap_definition.request.fill.apm_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.hostmap_definition.request.fill.apm_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.hostmap_definition.request.fill.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.hostmap_definition.request.fill.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.hostmap_definition.request.fill.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.hostmap_definition.request.fill.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.hostmap_definition.request.fill.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.hostmap_definition.request.fill.process_query` - -Required: - -- `metric` (String) Your chosen metric. - -Optional: - -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. - - - -### Nested Schema for `widget.hostmap_definition.request.fill.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.hostmap_definition.request.fill.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.hostmap_definition.request.fill.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.hostmap_definition.request.fill.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.hostmap_definition.request.fill.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.hostmap_definition.request.fill.security_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--security_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.hostmap_definition.request.fill.security_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.hostmap_definition.request.fill.security_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--security_query--group_by--sort_query)) - - -### Nested Schema for `widget.hostmap_definition.request.fill.security_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.hostmap_definition.request.fill.security_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - - -### Nested Schema for `widget.hostmap_definition.request.size` - -Optional: - -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--apm_query)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--log_query)) -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--process_query)) -- `q` (String) The metric query to use for this widget. -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--security_query)) - - -### Nested Schema for `widget.hostmap_definition.request.size.apm_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--apm_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.hostmap_definition.request.size.apm_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.hostmap_definition.request.size.apm_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--apm_query--group_by--sort_query)) - - -### Nested Schema for `widget.hostmap_definition.request.size.apm_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.hostmap_definition.request.size.apm_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.hostmap_definition.request.size.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.hostmap_definition.request.size.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.hostmap_definition.request.size.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.hostmap_definition.request.size.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.hostmap_definition.request.size.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.hostmap_definition.request.size.process_query` - -Required: - -- `metric` (String) Your chosen metric. - -Optional: - -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. - - - -### Nested Schema for `widget.hostmap_definition.request.size.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.hostmap_definition.request.size.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.hostmap_definition.request.size.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.hostmap_definition.request.size.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.hostmap_definition.request.size.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.hostmap_definition.request.size.security_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--security_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.hostmap_definition.request.size.security_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.hostmap_definition.request.size.security_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--security_query--group_by--sort_query)) - - -### Nested Schema for `widget.hostmap_definition.request.size.security_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.hostmap_definition.request.size.security_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - - - -### Nested Schema for `widget.hostmap_definition.style` - -Optional: - -- `fill_max` (String) The max value to use to color the map. -- `fill_min` (String) The min value to use to color the map. -- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. -- `palette_flip` (Boolean) A Boolean indicating whether to flip the palette tones. - - - - -### Nested Schema for `widget.iframe_definition` - -Required: - -- `url` (String) The URL to use as a data source for the widget. - - - -### Nested Schema for `widget.image_definition` - -Required: - -- `url` (String) The URL to use as a data source for the widget. - -Optional: - -- `has_background` (Boolean) Whether to display a background or not. Defaults to `true`. -- `has_border` (Boolean) Whether to display a border or not. Defaults to `true`. -- `horizontal_align` (String) The horizontal alignment for the widget. Valid values are `center`, `left`, `right`. -- `margin` (String) The margins to use around the image. Note: `small` and `large` values are deprecated. Valid values are `sm`, `md`, `lg`, `small`, `large`. -- `sizing` (String) The preferred method to adapt the dimensions of the image. The values are based on the image `object-fit` CSS properties. Note: `zoom`, `fit` and `center` values are deprecated. Valid values are `fill`, `contain`, `cover`, `none`, `scale-down`, `zoom`, `fit`, `center`. -- `url_dark_theme` (String) The URL in dark mode to use as a data source for the widget. -- `vertical_align` (String) The vertical alignment for the widget. Valid values are `center`, `top`, `bottom`. - - - -### Nested Schema for `widget.list_stream_definition` - -Required: - -- `request` (Block List, Min: 1) Nested block describing the requests to use when displaying the widget. Multiple `request` blocks are allowed with the structure below. (see [below for nested schema](#nestedblock--widget--list_stream_definition--request)) - -Optional: - -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title. Default is 16. - - -### Nested Schema for `widget.list_stream_definition.request` - -Required: - -- `columns` (Block List, Min: 1) Widget columns. (see [below for nested schema](#nestedblock--widget--list_stream_definition--request--columns)) -- `query` (Block List, Min: 1, Max: 1) Updated list stream widget. (see [below for nested schema](#nestedblock--widget--list_stream_definition--request--query)) -- `response_format` (String) Widget response format. Valid values are `event_list`. - - -### Nested Schema for `widget.list_stream_definition.request.columns` - -Required: - -- `field` (String) Widget column field. -- `width` (String) Widget column width. Valid values are `auto`, `compact`, `full`. - - - -### Nested Schema for `widget.list_stream_definition.request.query` - -Required: - -- `data_source` (String) Source from which to query items to display in the stream. Valid values are `logs_stream`, `audit_stream`, `ci_pipeline_stream`, `ci_test_stream`, `rum_issue_stream`, `apm_issue_stream`, `trace_stream`, `logs_issue_stream`, `logs_pattern_stream`, `logs_transaction_stream`, `event_stream`. - -Optional: - -- `event_size` (String) Size of events displayed in widget. Required if `data_source` is `event_stream`. Valid values are `s`, `l`. -- `indexes` (List of String) List of indexes. -- `query_string` (String) Widget query. -- `sort` (Block List, Max: 1) The facet and order to sort the data, for example: `{"column": "time", "order": "desc"}`. (see [below for nested schema](#nestedblock--widget--list_stream_definition--request--query--sort)) -- `storage` (String) Storage location (private beta). - - -### Nested Schema for `widget.list_stream_definition.request.query.sort` - -Required: - -- `column` (String) The facet path for the column. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - - - - - - -### Nested Schema for `widget.log_stream_definition` - -Optional: - -- `columns` (List of String) Stringified list of columns to use, for example: `["column1","column2","column3"]`. -- `indexes` (List of String) An array of index names to query in the stream. -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `message_display` (String) The number of log lines to display. Valid values are `inline`, `expanded-md`, `expanded-lg`. -- `query` (String) The query to use in the widget. -- `show_date_column` (Boolean) If the date column should be displayed. -- `show_message_column` (Boolean) If the message column should be displayed. -- `sort` (Block List, Max: 1) The facet and order to sort the data, for example: `{"column": "time", "order": "desc"}`. (see [below for nested schema](#nestedblock--widget--log_stream_definition--sort)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). - - -### Nested Schema for `widget.log_stream_definition.sort` - -Required: - -- `column` (String) The facet path for the column. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.manage_status_definition` - -Required: - -- `query` (String) The query to use in the widget. - -Optional: - -- `color_preference` (String) Whether to colorize text or background. Valid values are `background`, `text`. -- `display_format` (String) The display setting to use. Valid values are `counts`, `countsAndList`, `list`. -- `hide_zero_counts` (Boolean) A Boolean indicating whether to hide empty categories. -- `show_last_triggered` (Boolean) A Boolean indicating whether to show when monitors/groups last triggered. -- `show_priority` (Boolean) Whether to show the priorities column. -- `sort` (String) The method to sort the monitors. Valid values are `name`, `group`, `status`, `tags`, `triggered`, `group,asc`, `group,desc`, `name,asc`, `name,desc`, `status,asc`, `status,desc`, `tags,asc`, `tags,desc`, `triggered,asc`, `triggered,desc`, `priority,asc`, `priority,desc`. -- `summary_type` (String) The summary type to use. Valid values are `monitors`, `groups`, `combined`. -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). - - - -### Nested Schema for `widget.note_definition` - -Required: - -- `content` (String) The content of the note. - -Optional: - -- `background_color` (String) The background color of the note. -- `font_size` (String) The size of the text. -- `has_padding` (Boolean) Whether to add padding or not. Defaults to `true`. -- `show_tick` (Boolean) Whether to show a tick or not. -- `text_align` (String) The alignment of the widget's text. Valid values are `center`, `left`, `right`. -- `tick_edge` (String) When `tick = true`, a string indicating on which side of the widget the tick should be displayed. Valid values are `bottom`, `left`, `right`, `top`. -- `tick_pos` (String) When `tick = true`, a string with a percent sign indicating the position of the tick, for example: `tick_pos = "50%"` is centered alignment. -- `vertical_align` (String) The vertical alignment for the widget. Valid values are `center`, `top`, `bottom`. - - - -### Nested Schema for `widget.query_table_definition` - -Optional: - -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--custom_link)) -- `has_search_bar` (String) Controls the display of the search bar. Valid values are `always`, `never`, `auto`. -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query`, `apm_stats_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--query_table_definition--request)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). - - -### Nested Schema for `widget.query_table_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - -### Nested Schema for `widget.query_table_definition.request` - -Optional: - -- `aggregator` (String) The aggregator to use for time aggregation. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. -- `alias` (String) The alias for the column name (defaults to metric name). -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--apm_query)) -- `apm_stats_query` (Block List, Max: 1) (see [below for nested schema](#nestedblock--widget--query_table_definition--request--apm_stats_query)) -- `cell_display_mode` (List of String) A list of display modes for each table cell. List items one of `number`, `bar`. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background, depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--conditional_formats)) -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--query_table_definition--request--formula)) -- `limit` (Number) The number of lines to show in the table. -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--log_query)) -- `order` (String) The sort order for the rows. Valid values are `asc`, `desc`. -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--process_query)) -- `q` (String) The metric query to use for this widget. -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query)) -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--security_query)) - - -### Nested Schema for `widget.query_table_definition.request.apm_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--apm_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.query_table_definition.request.apm_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.query_table_definition.request.apm_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--apm_query--group_by--sort_query)) - - -### Nested Schema for `widget.query_table_definition.request.apm_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.query_table_definition.request.apm_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.query_table_definition.request.apm_stats_query` - -Required: - -- `env` (String) The environment name. -- `name` (String) The operation name associated with the service. -- `primary_tag` (String) The organization's host group name and value. -- `row_type` (String) The level of detail for the request. Valid values are `service`, `resource`, `span`. -- `service` (String) The service name. - -Optional: - -- `columns` (Block List) Column properties used by the front end for display. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--apm_stats_query--columns)) -- `resource` (String) The resource name. - - -### Nested Schema for `widget.query_table_definition.request.apm_stats_query.columns` - -Required: - -- `name` (String) The column name. - -Optional: - -- `alias` (String) A user-assigned alias for the column. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.query_table_definition.request.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.query_table_definition.request.formula` - -Required: - -- `formula_expression` (String) A string expression built from queries, formulas, and functions. - -Optional: - -- `alias` (String) An expression alias. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--formula--conditional_formats)) -- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--formula--limit)) -- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--formula--style)) - - -### Nested Schema for `widget.query_table_definition.request.formula.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.query_table_definition.request.formula.limit` - -Optional: - -- `count` (Number) The number of results to return. -- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. - - - -### Nested Schema for `widget.query_table_definition.request.formula.style` - -Optional: - -- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. -- `palette_index` (Number) Index specifying which color to use within the palette. - - - - -### Nested Schema for `widget.query_table_definition.request.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.query_table_definition.request.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.query_table_definition.request.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.query_table_definition.request.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.query_table_definition.request.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.query_table_definition.request.process_query` - -Required: - -- `metric` (String) Your chosen metric. - -Optional: - -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. - - - -### Nested Schema for `widget.query_table_definition.request.query` - -Optional: - -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query--slo_query)) - - -### Nested Schema for `widget.query_table_definition.request.query.apm_dependency_stats_query` - -Required: - -- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `operation_name` (String) Name of operation on service. -- `resource_name` (String) APM resource. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. - -Optional: - -- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - - - -### Nested Schema for `widget.query_table_definition.request.query.apm_resource_stats_query` - -Required: - -- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. - -Optional: - -- `group_by` (List of String) Array of fields to group results by. -- `operation_name` (String) Name of operation on service. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. -- `resource_name` (String) APM resource. - - - -### Nested Schema for `widget.query_table_definition.request.query.event_query` - -Required: - -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query--event_query--compute)) -- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query--event_query--group_by)) -- `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query--event_query--search)) -- `storage` (String) Storage location (private beta). - - -### Nested Schema for `widget.query_table_definition.request.query.event_query.compute` - -Required: - -- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `interval` (Number) A time interval in milliseconds. -- `metric` (String) The measurable attribute to compute. - - - -### Nested Schema for `widget.query_table_definition.request.query.event_query.group_by` - -Required: - -- `facet` (String) The event facet. - -Optional: - -- `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--query--event_query--group_by--sort)) - - -### Nested Schema for `widget.query_table_definition.request.query.event_query.group_by.sort` - -Required: - -- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `metric` (String) The metric used for sorting group by results. -- `order` (String) Direction of sort. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.query_table_definition.request.query.event_query.search` - -Required: - -- `query` (String) The events search string. - - - - -### Nested Schema for `widget.query_table_definition.request.query.metric_query` - -Required: - -- `name` (String) The name of the query for use in formulas. -- `query` (String) The metrics query definition. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - - - -### Nested Schema for `widget.query_table_definition.request.query.process_query` - -Required: - -- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. -- `metric` (String) The process metric name. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. -- `limit` (Number) The number of hits to return. -- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -- `tag_filters` (List of String) An array of tags to filter by. -- `text_filter` (String) The text to use as a filter. - - - -### Nested Schema for `widget.query_table_definition.request.query.slo_query` - -Required: - -- `data_source` (String) The data source for SLO queries. Valid values are `slo`. -- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. -- `slo_id` (String) ID of an SLO to query. - -Optional: - -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. -- `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - - - - -### Nested Schema for `widget.query_table_definition.request.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.query_table_definition.request.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.query_table_definition.request.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.query_table_definition.request.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.query_table_definition.request.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.query_table_definition.request.security_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--security_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.query_table_definition.request.security_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.query_table_definition.request.security_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_table_definition--request--security_query--group_by--sort_query)) - - -### Nested Schema for `widget.query_table_definition.request.security_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.query_table_definition.request.security_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - - - -### Nested Schema for `widget.query_value_definition` - -Optional: - -- `autoscale` (Boolean) A Boolean indicating whether to automatically scale the tile. -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--custom_link)) -- `custom_unit` (String) The unit for the value displayed in the widget. -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `precision` (Number) The precision to use when displaying the tile. -- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--query_value_definition--request)) -- `text_align` (String) The alignment of the widget's text. Valid values are `center`, `left`, `right`. -- `timeseries_background` (Block List, Max: 1) Set a timeseries on the widget background. (see [below for nested schema](#nestedblock--widget--query_value_definition--timeseries_background)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). - - -### Nested Schema for `widget.query_value_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - -### Nested Schema for `widget.query_value_definition.request` - -Optional: - -- `aggregator` (String) The aggregator to use for time aggregation. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--apm_query)) -- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--audit_query)) -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--conditional_formats)) -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--query_value_definition--request--formula)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--log_query)) -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--process_query)) -- `q` (String) The metric query to use for this widget. -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query)) -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--security_query)) - - -### Nested Schema for `widget.query_value_definition.request.apm_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--apm_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.query_value_definition.request.apm_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.query_value_definition.request.apm_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--apm_query--group_by--sort_query)) - - -### Nested Schema for `widget.query_value_definition.request.apm_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.query_value_definition.request.apm_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.query_value_definition.request.audit_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--audit_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--audit_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--audit_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.query_value_definition.request.audit_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.query_value_definition.request.audit_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--audit_query--group_by--sort_query)) - - -### Nested Schema for `widget.query_value_definition.request.audit_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.query_value_definition.request.audit_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.query_value_definition.request.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.query_value_definition.request.formula` - -Required: - -- `formula_expression` (String) A string expression built from queries, formulas, and functions. - -Optional: - -- `alias` (String) An expression alias. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--formula--conditional_formats)) -- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--formula--limit)) -- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--formula--style)) - - -### Nested Schema for `widget.query_value_definition.request.formula.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.query_value_definition.request.formula.limit` - -Optional: - -- `count` (Number) The number of results to return. -- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. - - - -### Nested Schema for `widget.query_value_definition.request.formula.style` - -Optional: - -- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. -- `palette_index` (Number) Index specifying which color to use within the palette. - - - - -### Nested Schema for `widget.query_value_definition.request.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.query_value_definition.request.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.query_value_definition.request.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.query_value_definition.request.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.query_value_definition.request.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.query_value_definition.request.process_query` - -Required: - -- `metric` (String) Your chosen metric. - -Optional: - -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. - - - -### Nested Schema for `widget.query_value_definition.request.query` - -Optional: - -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--slo_query)) - - -### Nested Schema for `widget.query_value_definition.request.query.apm_dependency_stats_query` - -Required: - -- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `operation_name` (String) Name of operation on service. -- `resource_name` (String) APM resource. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. - -Optional: - -- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - - - -### Nested Schema for `widget.query_value_definition.request.query.apm_resource_stats_query` - -Required: - -- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. - -Optional: - -- `group_by` (List of String) Array of fields to group results by. -- `operation_name` (String) Name of operation on service. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. -- `resource_name` (String) APM resource. - - - -### Nested Schema for `widget.query_value_definition.request.query.event_query` - -Required: - -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--event_query--compute)) -- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--event_query--group_by)) -- `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--event_query--search)) -- `storage` (String) Storage location (private beta). - - -### Nested Schema for `widget.query_value_definition.request.query.event_query.compute` - -Required: - -- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `interval` (Number) A time interval in milliseconds. -- `metric` (String) The measurable attribute to compute. - - - -### Nested Schema for `widget.query_value_definition.request.query.event_query.group_by` - -Required: - -- `facet` (String) The event facet. - -Optional: - -- `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--event_query--group_by--sort)) - - -### Nested Schema for `widget.query_value_definition.request.query.event_query.group_by.sort` - -Required: - -- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `metric` (String) The metric used for sorting group by results. -- `order` (String) Direction of sort. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.query_value_definition.request.query.event_query.search` - -Required: - -- `query` (String) The events search string. - - - - -### Nested Schema for `widget.query_value_definition.request.query.metric_query` - -Required: - -- `name` (String) The name of the query for use in formulas. -- `query` (String) The metrics query definition. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - - - -### Nested Schema for `widget.query_value_definition.request.query.process_query` - -Required: - -- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. -- `metric` (String) The process metric name. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. -- `limit` (Number) The number of hits to return. -- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -- `tag_filters` (List of String) An array of tags to filter by. -- `text_filter` (String) The text to use as a filter. - - - -### Nested Schema for `widget.query_value_definition.request.query.slo_query` - -Required: - -- `data_source` (String) The data source for SLO queries. Valid values are `slo`. -- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. -- `slo_id` (String) ID of an SLO to query. - -Optional: - -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. -- `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - - - - -### Nested Schema for `widget.query_value_definition.request.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.query_value_definition.request.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.query_value_definition.request.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.query_value_definition.request.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.query_value_definition.request.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.query_value_definition.request.security_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--security_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.query_value_definition.request.security_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.query_value_definition.request.security_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--security_query--group_by--sort_query)) - - -### Nested Schema for `widget.query_value_definition.request.security_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.query_value_definition.request.security_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - - -### Nested Schema for `widget.query_value_definition.timeseries_background` - -Required: - -- `type` (String) Whether the Timeseries is made using an area or bars. Valid values are `bars`, `area`. - -Optional: - -- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--timeseries_background--yaxis)) - - -### Nested Schema for `widget.query_value_definition.timeseries_background.yaxis` - -Optional: - -- `include_zero` (Boolean) Always include zero or fit the axis to the data range. -- `label` (String) The label of the axis to display on the graph. -- `max` (String) Specify the maximum value to show on the Y-axis. -- `min` (String) Specify the minimum value to show on the Y-axis. -- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. - - - - - -### Nested Schema for `widget.run_workflow_definition` - -Required: - -- `workflow_id` (String) Workflow ID - -Optional: - -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--run_workflow_definition--custom_link)) -- `input` (Block List) Array of workflow inputs to map to dashboard template variables. (see [below for nested schema](#nestedblock--widget--run_workflow_definition--input)) -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). - - -### Nested Schema for `widget.run_workflow_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - -### Nested Schema for `widget.run_workflow_definition.input` - -Required: - -- `name` (String) Name of the workflow input. -- `value` (String) Dashboard template variable. Can be suffixed with `.value` or `.key`. - - - - -### Nested Schema for `widget.scatterplot_definition` - -Optional: - -- `color_by_groups` (List of String) List of groups used for colors. -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--custom_link)) -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `request` (Block List, Max: 1) A nested block describing the request to use when displaying the widget. Exactly one `request` block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). -- `xaxis` (Block List, Max: 1) A nested block describing the X-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--xaxis)) -- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--yaxis)) - - -### Nested Schema for `widget.scatterplot_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - -### Nested Schema for `widget.scatterplot_definition.request` - -Optional: - -- `scatterplot_table` (Block List) Scatterplot request containing formulas and functions. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table)) -- `x` (Block List) The query used for the X-Axis. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query`, `apm_stats_query` or `process_query` is required within the block). (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x)) -- `y` (Block List) The query used for the Y-Axis. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query`, `apm_stats_query` or `process_query` is required within the block). (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y)) - - -### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table` - -Optional: - -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--formula)) -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query)) - - -### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.formula` - -Required: - -- `dimension` (String) Dimension of the Scatterplot. Valid values are `x`, `y`, `radius`, `color`. -- `formula_expression` (String) A string expression built from queries, formulas, and functions. - -Optional: - -- `alias` (String) An expression alias. - - - -### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query` - -Optional: - -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--slo_query)) - - -### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.apm_dependency_stats_query` - -Required: - -- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `operation_name` (String) Name of operation on service. -- `resource_name` (String) APM resource. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. - -Optional: - -- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - - - -### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.apm_resource_stats_query` - -Required: - -- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. - -Optional: - -- `group_by` (List of String) Array of fields to group results by. -- `operation_name` (String) Name of operation on service. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. -- `resource_name` (String) APM resource. - - - -### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.event_query` - -Required: - -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--event_query--compute)) -- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--event_query--group_by)) -- `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--event_query--search)) -- `storage` (String) Storage location (private beta). - - -### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.event_query.compute` - -Required: - -- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `interval` (Number) A time interval in milliseconds. -- `metric` (String) The measurable attribute to compute. - - - -### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.event_query.group_by` - -Required: - -- `facet` (String) The event facet. - -Optional: - -- `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--event_query--group_by--sort)) - - -### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.event_query.group_by.sort` - -Required: - -- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `metric` (String) The metric used for sorting group by results. -- `order` (String) Direction of sort. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.event_query.search` - -Required: - -- `query` (String) The events search string. - - - - -### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.metric_query` - -Required: - -- `name` (String) The name of the query for use in formulas. -- `query` (String) The metrics query definition. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - - - -### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.process_query` - -Required: - -- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. -- `metric` (String) The process metric name. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. -- `limit` (Number) The number of hits to return. -- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -- `tag_filters` (List of String) An array of tags to filter by. -- `text_filter` (String) The text to use as a filter. - - - -### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.slo_query` - -Required: - -- `data_source` (String) The data source for SLO queries. Valid values are `slo`. -- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. -- `slo_id` (String) ID of an SLO to query. - -Optional: - -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. -- `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - - - - - -### Nested Schema for `widget.scatterplot_definition.request.x` - -Optional: - -- `aggregator` (String) Aggregator used for the request. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--apm_query)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--log_query)) -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--process_query)) -- `q` (String) The metric query to use for this widget. -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--security_query)) - - -### Nested Schema for `widget.scatterplot_definition.request.x.apm_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--apm_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.scatterplot_definition.request.x.apm_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.scatterplot_definition.request.x.apm_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--apm_query--group_by--sort_query)) - - -### Nested Schema for `widget.scatterplot_definition.request.x.apm_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.scatterplot_definition.request.x.apm_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.scatterplot_definition.request.x.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.scatterplot_definition.request.x.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.scatterplot_definition.request.x.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.scatterplot_definition.request.x.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.scatterplot_definition.request.x.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.scatterplot_definition.request.x.process_query` - -Required: - -- `metric` (String) Your chosen metric. - -Optional: - -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. - - - -### Nested Schema for `widget.scatterplot_definition.request.x.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.scatterplot_definition.request.x.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.scatterplot_definition.request.x.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.scatterplot_definition.request.x.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.scatterplot_definition.request.x.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.scatterplot_definition.request.x.security_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--security_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.scatterplot_definition.request.x.security_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.scatterplot_definition.request.x.security_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--security_query--group_by--sort_query)) - - -### Nested Schema for `widget.scatterplot_definition.request.x.security_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.scatterplot_definition.request.x.security_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - - -### Nested Schema for `widget.scatterplot_definition.request.y` - -Optional: - -- `aggregator` (String) Aggregator used for the request. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--apm_query)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--log_query)) -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--process_query)) -- `q` (String) The metric query to use for this widget. -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--security_query)) - - -### Nested Schema for `widget.scatterplot_definition.request.y.apm_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--apm_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.scatterplot_definition.request.y.apm_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.scatterplot_definition.request.y.apm_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--apm_query--group_by--sort_query)) - - -### Nested Schema for `widget.scatterplot_definition.request.y.apm_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.scatterplot_definition.request.y.apm_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.scatterplot_definition.request.y.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.scatterplot_definition.request.y.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.scatterplot_definition.request.y.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.scatterplot_definition.request.y.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.scatterplot_definition.request.y.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.scatterplot_definition.request.y.process_query` - -Required: - -- `metric` (String) Your chosen metric. - -Optional: - -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. - - - -### Nested Schema for `widget.scatterplot_definition.request.y.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.scatterplot_definition.request.y.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.scatterplot_definition.request.y.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.scatterplot_definition.request.y.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.scatterplot_definition.request.y.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.scatterplot_definition.request.y.security_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--security_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.scatterplot_definition.request.y.security_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.scatterplot_definition.request.y.security_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--security_query--group_by--sort_query)) - - -### Nested Schema for `widget.scatterplot_definition.request.y.security_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.scatterplot_definition.request.y.security_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - - - -### Nested Schema for `widget.scatterplot_definition.xaxis` - -Optional: - -- `include_zero` (Boolean) Always include zero or fit the axis to the data range. -- `label` (String) The label of the axis to display on the graph. -- `max` (String) Specify the maximum value to show on the Y-axis. -- `min` (String) Specify the minimum value to show on the Y-axis. -- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. - - - -### Nested Schema for `widget.scatterplot_definition.yaxis` - -Optional: - -- `include_zero` (Boolean) Always include zero or fit the axis to the data range. -- `label` (String) The label of the axis to display on the graph. -- `max` (String) Specify the maximum value to show on the Y-axis. -- `min` (String) Specify the minimum value to show on the Y-axis. -- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. - - - - -### Nested Schema for `widget.service_level_objective_definition` - -Required: - -- `slo_id` (String) The ID of the service level objective used by the widget. -- `time_windows` (List of String) A list of time windows to display in the widget. Valid values are `7d`, `30d`, `90d`, `week_to_date`, `previous_week`, `month_to_date`, `previous_month`, `global_time`. -- `view_mode` (String) The view mode for the widget. Valid values are `overall`, `component`, `both`. -- `view_type` (String) The type of view to use when displaying the widget. Only `detail` is supported. - -Optional: - -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `global_time_target` (String) The global time target of the widget. -- `show_error_budget` (Boolean) Whether to show the error budget or not. -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). - - - -### Nested Schema for `widget.servicemap_definition` - -Required: - -- `filters` (List of String) Your environment and primary tag (or `*` if enabled for your account). -- `service` (String) The ID of the service to map. - -Optional: - -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--servicemap_definition--custom_link)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). - - -### Nested Schema for `widget.servicemap_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - - -### Nested Schema for `widget.slo_list_definition` - -Required: - -- `request` (Block List, Min: 1, Max: 1) A nested block describing the request to use when displaying the widget. Exactly one `request` block is allowed. (see [below for nested schema](#nestedblock--widget--slo_list_definition--request)) - -Optional: - -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). - - -### Nested Schema for `widget.slo_list_definition.request` - -Required: - -- `query` (Block List, Min: 1, Max: 1) Updated SLO List widget. (see [below for nested schema](#nestedblock--widget--slo_list_definition--request--query)) -- `request_type` (String) The request type for the SLO List request. Valid values are `slo_list`. - - -### Nested Schema for `widget.slo_list_definition.request.query` - -Required: - -- `query_string` (String) Widget query. - -Optional: - -- `limit` (Number) Maximum number of results to display in the table. Defaults to `100`. -- `sort` (Block List, Max: 1) The facet and order to sort the data, for example: `{"column": "status.sli", "order": "desc"}`. (see [below for nested schema](#nestedblock--widget--slo_list_definition--request--query--sort)) - - -### Nested Schema for `widget.slo_list_definition.request.query.sort` - -Required: - -- `column` (String) The facet path for the column. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - - - - - - -### Nested Schema for `widget.split_graph_definition` - -Required: - -- `size` (String) Size of the individual graphs in the split. -- `source_widget_definition` (Block List, Min: 1, Max: 1) The original widget we are splitting on. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition)) -- `split_config` (Block List, Min: 1, Max: 1) Encapsulates all user choices about how to split a graph. (see [below for nested schema](#nestedblock--widget--split_graph_definition--split_config)) - -Optional: - -- `has_uniform_y_axes` (Boolean) Normalize y axes across graphs. -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `title` (String) The title of the widget. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition` - -Optional: - -- `change_definition` (Block List, Max: 1) The definition for a Change widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition)) -- `geomap_definition` (Block List, Max: 1) The definition for a Geomap widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition)) -- `query_table_definition` (Block List, Max: 1) The definition for a Query Table widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition)) -- `query_value_definition` (Block List, Max: 1) The definition for a Query Value widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition)) -- `scatterplot_definition` (Block List, Max: 1) The definition for a Scatterplot widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition)) -- `sunburst_definition` (Block List, Max: 1) The definition for a Sunburst widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition)) -- `timeseries_definition` (Block List, Max: 1) The definition for a Timeseries widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition)) -- `toplist_definition` (Block List, Max: 1) The definition for a Toplist widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition)) -- `treemap_definition` (Block List, Max: 1) The definition for a Treemap widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition` - -Optional: - -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--custom_link)) -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple request blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the request block). (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request` - -Optional: - -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--apm_query)) -- `change_type` (String) Whether to show absolute or relative change. Valid values are `absolute`, `relative`. -- `compare_to` (String) Choose from when to compare current data to. Valid values are `hour_before`, `day_before`, `week_before`, `month_before`. -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--formula)) -- `increase_good` (Boolean) A Boolean indicating whether an increase in the value is good (displayed in green) or not (displayed in red). -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--log_query)) -- `order_by` (String) What to order by. Valid values are `change`, `name`, `present`, `past`. -- `order_dir` (String) Widget sorting method. Valid values are `asc`, `desc`. -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--process_query)) -- `q` (String) The metric query to use for this widget. -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--query)) -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--security_query)) -- `show_present` (Boolean) If set to `true`, displays the current value. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.apm_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--apm_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.apm_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.apm_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--apm_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.apm_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.apm_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.formula` - -Required: - -- `formula_expression` (String) A string expression built from queries, formulas, and functions. - -Optional: - -- `alias` (String) An expression alias. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--formula--conditional_formats)) -- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--formula--limit)) -- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--formula--style)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.formula.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.formula.limit` - -Optional: - -- `count` (Number) The number of results to return. -- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.formula.style` - -Optional: - -- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. -- `palette_index` (Number) Index specifying which color to use within the palette. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.process_query` - -Required: - -- `metric` (String) Your chosen metric. - -Optional: - -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.query` - -Optional: - -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--query--slo_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.query.apm_dependency_stats_query` - -Required: - -- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `operation_name` (String) Name of operation on service. -- `resource_name` (String) APM resource. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. - -Optional: - -- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.query.apm_resource_stats_query` - -Required: - -- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. - -Optional: - -- `group_by` (List of String) Array of fields to group results by. -- `operation_name` (String) Name of operation on service. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. -- `resource_name` (String) APM resource. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.query.event_query` - -Required: - -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--query--event_query--compute)) -- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--query--event_query--group_by)) -- `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--query--event_query--search)) -- `storage` (String) Storage location (private beta). - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.query.event_query.compute` - -Required: - -- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `interval` (Number) A time interval in milliseconds. -- `metric` (String) The measurable attribute to compute. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.query.event_query.group_by` - -Required: - -- `facet` (String) The event facet. - -Optional: - -- `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--query--event_query--group_by--sort)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.query.event_query.group_by.sort` - -Required: - -- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `metric` (String) The metric used for sorting group by results. -- `order` (String) Direction of sort. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.query.event_query.search` - -Required: - -- `query` (String) The events search string. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.query.metric_query` - -Required: - -- `name` (String) The name of the query for use in formulas. -- `query` (String) The metrics query definition. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.query.process_query` - -Required: - -- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. -- `metric` (String) The process metric name. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. -- `limit` (Number) The number of hits to return. -- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -- `tag_filters` (List of String) An array of tags to filter by. -- `text_filter` (String) The text to use as a filter. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.query.slo_query` - -Required: - -- `data_source` (String) The data source for SLO queries. Valid values are `slo`. -- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. -- `slo_id` (String) ID of an SLO to query. - -Optional: - -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. -- `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.security_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--security_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.security_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.security_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--change_definition--request--security_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.security_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.change_definition.request.security_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition` - -Required: - -- `view` (Block List, Min: 1, Max: 1) The view of the world that the map should render. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--view)) - -Optional: - -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--custom_link)) -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `log_query` or `rum_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request)) -- `style` (Block List, Max: 1) The style of the widget graph. One nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--style)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.view` - -Required: - -- `focus` (String) The two-letter ISO code of a country to focus the map on (or `WORLD`). - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request` - -Optional: - -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--formula)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--log_query)) -- `q` (String) The metric query to use for this widget. -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query)) -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--rum_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.formula` - -Required: - -- `formula_expression` (String) A string expression built from queries, formulas, and functions. - -Optional: - -- `alias` (String) An expression alias. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--formula--conditional_formats)) -- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--formula--limit)) -- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--formula--style)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.formula.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.formula.limit` - -Optional: - -- `count` (Number) The number of results to return. -- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.formula.style` - -Optional: - -- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. -- `palette_index` (Number) Index specifying which color to use within the palette. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.query` - -Optional: - -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--slo_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.apm_dependency_stats_query` - -Required: - -- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `operation_name` (String) Name of operation on service. -- `resource_name` (String) APM resource. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. - -Optional: - -- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.apm_resource_stats_query` - -Required: - -- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. - -Optional: - -- `group_by` (List of String) Array of fields to group results by. -- `operation_name` (String) Name of operation on service. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. -- `resource_name` (String) APM resource. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.event_query` - -Required: - -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--event_query--compute)) -- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--event_query--group_by)) -- `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--event_query--search)) -- `storage` (String) Storage location (private beta). - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.event_query.compute` - -Required: - -- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `interval` (Number) A time interval in milliseconds. -- `metric` (String) The measurable attribute to compute. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.event_query.group_by` - -Required: - -- `facet` (String) The event facet. - -Optional: - -- `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--query--event_query--group_by--sort)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.event_query.group_by.sort` - -Required: - -- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `metric` (String) The metric used for sorting group by results. -- `order` (String) Direction of sort. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.event_query.search` - -Required: - -- `query` (String) The events search string. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.metric_query` - -Required: - -- `name` (String) The name of the query for use in formulas. -- `query` (String) The metrics query definition. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.process_query` - -Required: - -- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. -- `metric` (String) The process metric name. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. -- `limit` (Number) The number of hits to return. -- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -- `tag_filters` (List of String) An array of tags to filter by. -- `text_filter` (String) The text to use as a filter. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.query.slo_query` - -Required: - -- `data_source` (String) The data source for SLO queries. Valid values are `slo`. -- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. -- `slo_id` (String) ID of an SLO to query. - -Optional: - -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. -- `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--geomap_definition--request--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.request.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.geomap_definition.style` - -Required: - -- `palette` (String) The color palette to apply to the widget. -- `palette_flip` (Boolean) A Boolean indicating whether to flip the palette tones. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition` - -Optional: - -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--custom_link)) -- `has_search_bar` (String) Controls the display of the search bar. Valid values are `always`, `never`, `auto`. -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query`, `apm_stats_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request` - -Optional: - -- `aggregator` (String) The aggregator to use for time aggregation. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. -- `alias` (String) The alias for the column name (defaults to metric name). -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--apm_query)) -- `apm_stats_query` (Block List, Max: 1) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--apm_stats_query)) -- `cell_display_mode` (List of String) A list of display modes for each table cell. List items one of `number`, `bar`. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background, depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--conditional_formats)) -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--formula)) -- `limit` (Number) The number of lines to show in the table. -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--log_query)) -- `order` (String) The sort order for the rows. Valid values are `asc`, `desc`. -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--process_query)) -- `q` (String) The metric query to use for this widget. -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query)) -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--security_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.apm_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--apm_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.apm_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.apm_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--apm_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.apm_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.apm_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.apm_stats_query` - -Required: - -- `env` (String) The environment name. -- `name` (String) The operation name associated with the service. -- `primary_tag` (String) The organization's host group name and value. -- `row_type` (String) The level of detail for the request. Valid values are `service`, `resource`, `span`. -- `service` (String) The service name. - -Optional: - -- `columns` (Block List) Column properties used by the front end for display. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--apm_stats_query--columns)) -- `resource` (String) The resource name. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.apm_stats_query.columns` - -Required: - -- `name` (String) The column name. - -Optional: - -- `alias` (String) A user-assigned alias for the column. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.formula` - -Required: - -- `formula_expression` (String) A string expression built from queries, formulas, and functions. - -Optional: - -- `alias` (String) An expression alias. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--formula--conditional_formats)) -- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--formula--limit)) -- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--formula--style)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.formula.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.formula.limit` - -Optional: - -- `count` (Number) The number of results to return. -- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.formula.style` - -Optional: - -- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. -- `palette_index` (Number) Index specifying which color to use within the palette. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.process_query` - -Required: - -- `metric` (String) Your chosen metric. - -Optional: - -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.query` - -Optional: - -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--slo_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.apm_dependency_stats_query` - -Required: - -- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `operation_name` (String) Name of operation on service. -- `resource_name` (String) APM resource. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. - -Optional: - -- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.apm_resource_stats_query` - -Required: - -- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. - -Optional: - -- `group_by` (List of String) Array of fields to group results by. -- `operation_name` (String) Name of operation on service. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. -- `resource_name` (String) APM resource. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.event_query` - -Required: - -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--event_query--compute)) -- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--event_query--group_by)) -- `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--event_query--search)) -- `storage` (String) Storage location (private beta). - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.event_query.compute` - -Required: - -- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `interval` (Number) A time interval in milliseconds. -- `metric` (String) The measurable attribute to compute. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.event_query.group_by` - -Required: - -- `facet` (String) The event facet. - -Optional: - -- `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--query--event_query--group_by--sort)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.event_query.group_by.sort` - -Required: - -- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `metric` (String) The metric used for sorting group by results. -- `order` (String) Direction of sort. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.event_query.search` - -Required: - -- `query` (String) The events search string. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.metric_query` - -Required: - -- `name` (String) The name of the query for use in formulas. -- `query` (String) The metrics query definition. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.process_query` - -Required: - -- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. -- `metric` (String) The process metric name. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. -- `limit` (Number) The number of hits to return. -- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -- `tag_filters` (List of String) An array of tags to filter by. -- `text_filter` (String) The text to use as a filter. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.query.slo_query` - -Required: - -- `data_source` (String) The data source for SLO queries. Valid values are `slo`. -- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. -- `slo_id` (String) ID of an SLO to query. - -Optional: - -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. -- `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.security_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--security_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.security_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.security_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_table_definition--request--security_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.security_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_table_definition.request.security_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition` - -Optional: - -- `autoscale` (Boolean) A Boolean indicating whether to automatically scale the tile. -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--custom_link)) -- `custom_unit` (String) The unit for the value displayed in the widget. -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `precision` (Number) The precision to use when displaying the tile. -- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request)) -- `text_align` (String) The alignment of the widget's text. Valid values are `center`, `left`, `right`. -- `timeseries_background` (Block List, Max: 1) Set a timeseries on the widget background. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--timeseries_background)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request` - -Optional: - -- `aggregator` (String) The aggregator to use for time aggregation. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--apm_query)) -- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--audit_query)) -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--conditional_formats)) -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--formula)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--log_query)) -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--process_query)) -- `q` (String) The metric query to use for this widget. -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query)) -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--security_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.apm_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--apm_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.apm_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.apm_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--apm_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.apm_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.apm_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.audit_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--audit_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--audit_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--audit_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.audit_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.audit_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--audit_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.audit_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.audit_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.formula` - -Required: - -- `formula_expression` (String) A string expression built from queries, formulas, and functions. - -Optional: - -- `alias` (String) An expression alias. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--formula--conditional_formats)) -- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--formula--limit)) -- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--formula--style)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.formula.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.formula.limit` - -Optional: - -- `count` (Number) The number of results to return. -- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.formula.style` - -Optional: - -- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. -- `palette_index` (Number) Index specifying which color to use within the palette. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.process_query` - -Required: - -- `metric` (String) Your chosen metric. - -Optional: - -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.query` - -Optional: - -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--slo_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.apm_dependency_stats_query` - -Required: - -- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `operation_name` (String) Name of operation on service. -- `resource_name` (String) APM resource. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. - -Optional: - -- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.apm_resource_stats_query` - -Required: - -- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. - -Optional: - -- `group_by` (List of String) Array of fields to group results by. -- `operation_name` (String) Name of operation on service. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. -- `resource_name` (String) APM resource. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.event_query` - -Required: - -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--event_query--compute)) -- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--event_query--group_by)) -- `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--event_query--search)) -- `storage` (String) Storage location (private beta). - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.event_query.compute` - -Required: - -- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `interval` (Number) A time interval in milliseconds. -- `metric` (String) The measurable attribute to compute. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.event_query.group_by` - -Required: - -- `facet` (String) The event facet. - -Optional: - -- `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--query--event_query--group_by--sort)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.event_query.group_by.sort` - -Required: - -- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `metric` (String) The metric used for sorting group by results. -- `order` (String) Direction of sort. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.event_query.search` - -Required: - -- `query` (String) The events search string. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.metric_query` - -Required: - -- `name` (String) The name of the query for use in formulas. -- `query` (String) The metrics query definition. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.process_query` - -Required: - -- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. -- `metric` (String) The process metric name. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. -- `limit` (Number) The number of hits to return. -- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -- `tag_filters` (List of String) An array of tags to filter by. -- `text_filter` (String) The text to use as a filter. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.query.slo_query` - -Required: - -- `data_source` (String) The data source for SLO queries. Valid values are `slo`. -- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. -- `slo_id` (String) ID of an SLO to query. - -Optional: - -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. -- `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.security_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--security_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.security_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.security_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--request--security_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.security_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.request.security_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.timeseries_background` - -Required: - -- `type` (String) Whether the Timeseries is made using an area or bars. Valid values are `bars`, `area`. - -Optional: - -- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--query_value_definition--timeseries_background--yaxis)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.query_value_definition.timeseries_background.yaxis` - -Optional: - -- `include_zero` (Boolean) Always include zero or fit the axis to the data range. -- `label` (String) The label of the axis to display on the graph. -- `max` (String) Specify the maximum value to show on the Y-axis. -- `min` (String) Specify the minimum value to show on the Y-axis. -- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. - - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition` - -Optional: - -- `color_by_groups` (List of String) List of groups used for colors. -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--custom_link)) -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `request` (Block List, Max: 1) A nested block describing the request to use when displaying the widget. Exactly one `request` block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). -- `xaxis` (Block List, Max: 1) A nested block describing the X-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--xaxis)) -- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--yaxis)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request` - -Optional: - -- `scatterplot_table` (Block List) Scatterplot request containing formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table)) -- `x` (Block List) The query used for the X-Axis. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query`, `apm_stats_query` or `process_query` is required within the block). (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x)) -- `y` (Block List) The query used for the Y-Axis. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query`, `apm_stats_query` or `process_query` is required within the block). (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table` - -Optional: - -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--formula)) -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.formula` - -Required: - -- `dimension` (String) Dimension of the Scatterplot. Valid values are `x`, `y`, `radius`, `color`. -- `formula_expression` (String) A string expression built from queries, formulas, and functions. - -Optional: - -- `alias` (String) An expression alias. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query` - -Optional: - -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--slo_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.apm_dependency_stats_query` - -Required: - -- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `operation_name` (String) Name of operation on service. -- `resource_name` (String) APM resource. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. - -Optional: - -- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.apm_resource_stats_query` - -Required: - -- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. - -Optional: - -- `group_by` (List of String) Array of fields to group results by. -- `operation_name` (String) Name of operation on service. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. -- `resource_name` (String) APM resource. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.event_query` - -Required: - -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--event_query--compute)) -- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--event_query--group_by)) -- `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--event_query--search)) -- `storage` (String) Storage location (private beta). - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.event_query.compute` - -Required: - -- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `interval` (Number) A time interval in milliseconds. -- `metric` (String) The measurable attribute to compute. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.event_query.group_by` - -Required: - -- `facet` (String) The event facet. - -Optional: - -- `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--scatterplot_table--query--event_query--group_by--sort)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.event_query.group_by.sort` - -Required: - -- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `metric` (String) The metric used for sorting group by results. -- `order` (String) Direction of sort. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.event_query.search` - -Required: - -- `query` (String) The events search string. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.metric_query` - -Required: - -- `name` (String) The name of the query for use in formulas. -- `query` (String) The metrics query definition. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.process_query` - -Required: - -- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. -- `metric` (String) The process metric name. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. -- `limit` (Number) The number of hits to return. -- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -- `tag_filters` (List of String) An array of tags to filter by. -- `text_filter` (String) The text to use as a filter. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.scatterplot_table.query.slo_query` - -Required: - -- `data_source` (String) The data source for SLO queries. Valid values are `slo`. -- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. -- `slo_id` (String) ID of an SLO to query. - -Optional: - -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. -- `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x` - -Optional: - -- `aggregator` (String) Aggregator used for the request. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--apm_query)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--log_query)) -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--process_query)) -- `q` (String) The metric query to use for this widget. -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--security_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.apm_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--apm_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.apm_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.apm_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--apm_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.apm_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.apm_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.process_query` - -Required: - -- `metric` (String) Your chosen metric. - -Optional: - -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.security_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--security_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.security_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.security_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--x--security_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.security_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.x.security_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y` - -Optional: - -- `aggregator` (String) Aggregator used for the request. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--apm_query)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--log_query)) -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--process_query)) -- `q` (String) The metric query to use for this widget. -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--security_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.apm_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--apm_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.apm_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.apm_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--apm_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.apm_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.apm_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.process_query` - -Required: - -- `metric` (String) Your chosen metric. - -Optional: - -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.security_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--security_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.security_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.security_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--scatterplot_definition--request--y--security_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.security_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.request.y.security_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.xaxis` - -Optional: - -- `include_zero` (Boolean) Always include zero or fit the axis to the data range. -- `label` (String) The label of the axis to display on the graph. -- `max` (String) Specify the maximum value to show on the Y-axis. -- `min` (String) Specify the minimum value to show on the Y-axis. -- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.scatterplot_definition.yaxis` - -Optional: - -- `include_zero` (Boolean) Always include zero or fit the axis to the data range. -- `label` (String) The label of the axis to display on the graph. -- `max` (String) Specify the maximum value to show on the Y-axis. -- `min` (String) Specify the minimum value to show on the Y-axis. -- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition` - -Optional: - -- `custom_link` (Block List) Nested block describing a custom link. Multiple `custom_link` blocks are allowed with the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--custom_link)) -- `hide_total` (Boolean) Whether or not to show the total value in the widget. -- `legend_inline` (Block List, Max: 1) Used to configure the inline legend. Cannot be used in conjunction with legend_table. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--legend_inline)) -- `legend_table` (Block List, Max: 1) Used to configure the table legend. Cannot be used in conjunction with legend_inline. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--legend_table)) -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `request` (Block List) Nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed with the structure below (exactly one of `q`, `log_query` or `rum_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. One of `left`, `center`, or `right`. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title. Default is 16. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.legend_inline` - -Required: - -- `type` (String) The type of legend (inline or automatic). Valid values are `inline`, `automatic`. - -Optional: - -- `hide_percent` (Boolean) Whether to hide the percentages of the groups. -- `hide_value` (Boolean) Whether to hide the values of the groups. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.legend_table` - -Required: - -- `type` (String) The type of legend (table or none). Valid values are `table`, `none`. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request` - -Optional: - -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--apm_query)) -- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--audit_query)) -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--formula)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--log_query)) -- `network_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--network_query)) -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--process_query)) -- `q` (String) The metric query to use for this widget. -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query)) -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--security_query)) -- `style` (Block List, Max: 1) Define style for the widget's request. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--style)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.apm_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--apm_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.apm_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.apm_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--apm_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.apm_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.apm_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.audit_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--audit_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--audit_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--audit_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.audit_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.audit_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--audit_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.audit_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.audit_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.formula` - -Required: - -- `formula_expression` (String) A string expression built from queries, formulas, and functions. - -Optional: - -- `alias` (String) An expression alias. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--formula--conditional_formats)) -- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--formula--limit)) -- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--formula--style)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.formula.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.formula.limit` - -Optional: - -- `count` (Number) The number of results to return. -- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.formula.style` - -Optional: - -- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. -- `palette_index` (Number) Index specifying which color to use within the palette. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.network_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--network_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--network_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--network_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.network_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.network_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--network_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.network_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.network_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.process_query` - -Required: - -- `metric` (String) Your chosen metric. - -Optional: - -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query` - -Optional: - -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--slo_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.apm_dependency_stats_query` - -Required: - -- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `operation_name` (String) Name of operation on service. -- `resource_name` (String) APM resource. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. - -Optional: - -- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.apm_resource_stats_query` - -Required: - -- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. - -Optional: - -- `group_by` (List of String) Array of fields to group results by. -- `operation_name` (String) Name of operation on service. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. -- `resource_name` (String) APM resource. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.event_query` - -Required: - -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--event_query--compute)) -- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--event_query--group_by)) -- `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--event_query--search)) -- `storage` (String) Storage location (private beta). - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.event_query.compute` - -Required: - -- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `interval` (Number) A time interval in milliseconds. -- `metric` (String) The measurable attribute to compute. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.event_query.group_by` - -Required: - -- `facet` (String) The event facet. - -Optional: - -- `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--query--event_query--group_by--sort)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.event_query.group_by.sort` - -Required: - -- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - -Optional: - -- `metric` (String) The metric used for sorting group by results. -- `order` (String) Direction of sort. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.event_query.search` - -Required: - -- `query` (String) The events search string. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.metric_query` - -Required: - -- `name` (String) The name of the query for use in formulas. -- `query` (String) The metrics query definition. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.process_query` - -Required: - -- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. -- `metric` (String) The process metric name. -- `name` (String) The name of query for use in formulas. - -Optional: - -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. -- `limit` (Number) The number of hits to return. -- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -- `tag_filters` (List of String) An array of tags to filter by. -- `text_filter` (String) The text to use as a filter. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.query.slo_query` - -Required: - -- `data_source` (String) The data source for SLO queries. Valid values are `slo`. -- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. -- `slo_id` (String) ID of an SLO to query. - -Optional: - -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. -- `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.security_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--security_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.security_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.security_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--sunburst_definition--request--security_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.security_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.security_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.sunburst_definition.request.style` - -Optional: - -- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. - - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition` - -Optional: - -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--custom_link)) -- `event` (Block List) The definition of the event to overlay on the graph. Multiple `event` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--event)) -- `legend_columns` (Set of String) A list of columns to display in the legend. Valid values are `value`, `avg`, `sum`, `min`, `max`. -- `legend_layout` (String) The layout of the legend displayed in the widget. Valid values are `auto`, `horizontal`, `vertical`. -- `legend_size` (String) The size of the legend displayed in the widget. -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `marker` (Block List) A nested block describing the marker to use when displaying the widget. The structure of this block is described below. Multiple `marker` blocks are allowed within a given `tile_def` block. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--marker)) -- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `network_query`, `security_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request)) -- `right_yaxis` (Block List, Max: 1) A nested block describing the right Y-Axis Controls. See the `on_right_yaxis` property for which request will use this axis. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--right_yaxis)) -- `show_legend` (Boolean) Whether or not to show the legend on this widget. -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). -- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--yaxis)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.event` - -Required: - -- `q` (String) The event query to use in the widget. - -Optional: - -- `tags_execution` (String) The execution method for multi-value filters. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.marker` - -Required: - -- `value` (String) A mathematical expression describing the marker, for example: `y > 1`, `-5 < y < 0`, `y = 19`. - -Optional: - -- `display_type` (String) How the marker lines are displayed, options are one of {`error`, `warning`, `info`, `ok`} combined with one of {`dashed`, `solid`, `bold`}. Example: `error dashed`. -- `label` (String) A label for the line or range. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request` - -Optional: - -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--apm_query)) -- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--audit_query)) -- `display_type` (String) How to display the marker lines. Valid values are `area`, `bars`, `line`, `overlay`. -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--formula)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--log_query)) -- `metadata` (Block List) Used to define expression aliases. Multiple `metadata` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--metadata)) -- `network_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--network_query)) -- `on_right_yaxis` (Boolean) A Boolean indicating whether the request uses the right or left Y-Axis. -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--process_query)) -- `q` (String) The metric query to use for this widget. -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query)) -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--security_query)) -- `style` (Block List, Max: 1) The style of the widget graph. Exactly one `style` block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--style)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.apm_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--apm_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.apm_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.apm_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--apm_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.apm_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.apm_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.audit_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--audit_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--audit_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--audit_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.audit_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.audit_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--audit_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.audit_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.audit_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.formula` - -Required: - -- `formula_expression` (String) A string expression built from queries, formulas, and functions. - -Optional: - -- `alias` (String) An expression alias. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--formula--conditional_formats)) -- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--formula--limit)) -- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--formula--style)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.formula.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.formula.limit` - -Optional: - -- `count` (Number) The number of results to return. -- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.formula.style` - -Optional: - -- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. -- `palette_index` (Number) Index specifying which color to use within the palette. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.log_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--log_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.log_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.log_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--log_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.log_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.log_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.metadata` - -Required: - -- `expression` (String) The expression name. - -Optional: - -- `alias_name` (String) The expression alias. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.network_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--network_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--network_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--network_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.network_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - +- `color_by_groups` (List of String) List of groups used for colors. +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--custom_link)) +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List, Max: 1) A nested block describing the request to use when displaying the widget. Exactly one `request` block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). +- `xaxis` (Block List, Max: 1) A nested block describing the X-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--xaxis)) +- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--yaxis)) - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.network_query.group_by` + +### Nested Schema for `widget.scatterplot_definition.custom_link` Optional: -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--network_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.network_query.group_by.sort_query` +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. -Required: -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +### Nested Schema for `widget.scatterplot_definition.request` Optional: -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.network_query.multi_compute` - -Required: +- `scatterplot_table` (Block List) Scatterplot request containing formulas and functions. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table)) +- `x` (Block List) The query used for the X-Axis. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query`, `apm_stats_query` or `process_query` is required within the block). (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x)) +- `y` (Block List) The query used for the Y-Axis. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query`, `apm_stats_query` or `process_query` is required within the block). (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y)) -- `aggregation` (String) The aggregation method. + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table` Optional: -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--formula)) +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query)) - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.process_query` + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.formula` Required: -- `metric` (String) Your chosen metric. +- `dimension` (String) Dimension of the Scatterplot. Valid values are `x`, `y`, `radius`, `color`. +- `formula_expression` (String) A string expression built from queries, formulas, and functions. Optional: -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. +- `alias` (String) An expression alias. - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query` + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query` Optional: -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--slo_query)) +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--slo_query)) - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.apm_dependency_stats_query` + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.apm_dependency_stats_query` Required: @@ -21830,8 +4147,8 @@ Optional: - `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.apm_resource_stats_query` + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.apm_resource_stats_query` Required: @@ -21850,24 +4167,24 @@ Optional: - `resource_name` (String) APM resource. - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.event_query` + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.event_query` Required: -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--event_query--compute)) +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--event_query--compute)) - `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. - `name` (String) The name of query for use in formulas. Optional: -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--event_query--group_by)) +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--event_query--group_by)) - `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--event_query--search)) +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--event_query--search)) - `storage` (String) Storage location (private beta). - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.event_query.compute` + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.event_query.compute` Required: @@ -21879,8 +4196,8 @@ Optional: - `metric` (String) The measurable attribute to compute. - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.event_query.group_by` + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.event_query.group_by` Required: @@ -21889,10 +4206,10 @@ Required: Optional: - `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--query--event_query--group_by--sort)) +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--event_query--group_by--sort)) - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.event_query.group_by.sort` + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.event_query.group_by.sort` Required: @@ -21905,8 +4222,8 @@ Optional: - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.event_query.search` + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.event_query.search` Required: @@ -21914,8 +4231,8 @@ Required: - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.metric_query` + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.metric_query` Required: @@ -21928,8 +4245,8 @@ Optional: - `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.process_query` + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.process_query` Required: @@ -21947,8 +4264,8 @@ Optional: - `text_filter` (String) The text to use as a filter. - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.query.slo_query` + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.slo_query` Required: @@ -21961,216 +4278,26 @@ Optional: - `additional_query_filters` (String) Additional filters applied to the SLO query. - `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. - `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.rum_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--rum_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.rum_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.rum_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--rum_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.rum_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.rum_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.security_query` - -Required: - -- `index` (String) The name of the index to query. - -Optional: - -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--security_query--multi_compute)) -- `search_query` (String) The search query to use. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.security_query.compute_query` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.security_query.group_by` - -Optional: - -- `facet` (String) The facet name. -- `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--timeseries_definition--request--security_query--group_by--sort_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.security_query.group_by.sort_query` - -Required: - -- `aggregation` (String) The aggregation method. -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. - -Optional: - -- `facet` (String) The facet name. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.security_query.multi_compute` - -Required: - -- `aggregation` (String) The aggregation method. - -Optional: - -- `facet` (String) The facet name. -- `interval` (Number) Define the time interval in seconds. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.request.style` - -Optional: - -- `line_type` (String) The type of lines displayed. Valid values are `dashed`, `dotted`, `solid`. -- `line_width` (String) The width of line displayed. Valid values are `normal`, `thick`, `thin`. -- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.right_yaxis` - -Optional: - -- `include_zero` (Boolean) Always include zero or fit the axis to the data range. -- `label` (String) The label of the axis to display on the graph. -- `max` (String) Specify the maximum value to show on the Y-axis. -- `min` (String) Specify the minimum value to show on the Y-axis. -- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.timeseries_definition.yaxis` - -Optional: - -- `include_zero` (Boolean) Always include zero or fit the axis to the data range. -- `label` (String) The label of the axis to display on the graph. -- `max` (String) Specify the maximum value to show on the Y-axis. -- `min` (String) Specify the minimum value to show on the Y-axis. -- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition` - -Optional: - -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--custom_link)) -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.custom_link` - -Optional: - -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request` + + +### Nested Schema for `widget.scatterplot_definition.request.x` Optional: -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--apm_query)) -- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--audit_query)) -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background, depending on a rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--conditional_formats)) -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--formula)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--log_query)) -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--process_query)) +- `aggregator` (String) Aggregator used for the request. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--apm_query)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--process_query)) - `q` (String) The metric query to use for this widget. -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query)) -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--security_query)) -- `style` (Block List, Max: 1) Define request for the widget's style. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--style)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--security_query)) - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.apm_query` + +### Nested Schema for `widget.scatterplot_definition.request.x.apm_query` Required: @@ -22178,13 +4305,13 @@ Required: Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--apm_query--multi_compute)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--apm_query--multi_compute)) - `search_query` (String) The search query to use. - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.apm_query.compute_query` + +### Nested Schema for `widget.scatterplot_definition.request.x.apm_query.compute_query` Required: @@ -22196,17 +4323,17 @@ Optional: - `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.apm_query.group_by` + +### Nested Schema for `widget.scatterplot_definition.request.x.apm_query.group_by` Optional: - `facet` (String) The facet name. - `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--apm_query--group_by--sort_query)) +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--apm_query--group_by--sort_query)) - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.apm_query.group_by.sort_query` + +### Nested Schema for `widget.scatterplot_definition.request.x.apm_query.group_by.sort_query` Required: @@ -22219,8 +4346,8 @@ Optional: - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.apm_query.multi_compute` + +### Nested Schema for `widget.scatterplot_definition.request.x.apm_query.multi_compute` Required: @@ -22233,8 +4360,8 @@ Optional: - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.audit_query` + +### Nested Schema for `widget.scatterplot_definition.request.x.log_query` Required: @@ -22242,13 +4369,13 @@ Required: Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--audit_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--audit_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--audit_query--multi_compute)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--log_query--multi_compute)) - `search_query` (String) The search query to use. - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.audit_query.compute_query` + +### Nested Schema for `widget.scatterplot_definition.request.x.log_query.compute_query` Required: @@ -22260,17 +4387,17 @@ Optional: - `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.audit_query.group_by` + +### Nested Schema for `widget.scatterplot_definition.request.x.log_query.group_by` Optional: - `facet` (String) The facet name. - `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--audit_query--group_by--sort_query)) +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--log_query--group_by--sort_query)) - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.audit_query.group_by.sort_query` + +### Nested Schema for `widget.scatterplot_definition.request.x.log_query.group_by.sort_query` Required: @@ -22283,8 +4410,8 @@ Optional: - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.audit_query.multi_compute` + +### Nested Schema for `widget.scatterplot_definition.request.x.log_query.multi_compute` Required: @@ -22297,80 +4424,22 @@ Optional: - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.conditional_formats` - -Required: - -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.formula` - -Required: - -- `formula_expression` (String) A string expression built from queries, formulas, and functions. - -Optional: - -- `alias` (String) An expression alias. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--formula--conditional_formats)) -- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--formula--limit)) -- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--formula--style)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.formula.conditional_formats` + +### Nested Schema for `widget.scatterplot_definition.request.x.process_query` Required: -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.formula.limit` - -Optional: - -- `count` (Number) The number of results to return. -- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.formula.style` +- `metric` (String) Your chosen metric. Optional: -- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. -- `palette_index` (Number) Index specifying which color to use within the palette. - +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.log_query` + +### Nested Schema for `widget.scatterplot_definition.request.x.rum_query` Required: @@ -22378,13 +4447,13 @@ Required: Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--log_query--multi_compute)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--rum_query--multi_compute)) - `search_query` (String) The search query to use. - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.log_query.compute_query` + +### Nested Schema for `widget.scatterplot_definition.request.x.rum_query.compute_query` Required: @@ -22396,17 +4465,17 @@ Optional: - `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.log_query.group_by` + +### Nested Schema for `widget.scatterplot_definition.request.x.rum_query.group_by` Optional: - `facet` (String) The facet name. - `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--log_query--group_by--sort_query)) +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--rum_query--group_by--sort_query)) - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.log_query.group_by.sort_query` + +### Nested Schema for `widget.scatterplot_definition.request.x.rum_query.group_by.sort_query` Required: @@ -22419,8 +4488,8 @@ Optional: - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.log_query.multi_compute` + +### Nested Schema for `widget.scatterplot_definition.request.x.rum_query.multi_compute` Required: @@ -22433,189 +4502,86 @@ Optional: - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.process_query` - -Required: - -- `metric` (String) Your chosen metric. - -Optional: - -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.query` - -Optional: - -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--slo_query)) - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.apm_dependency_stats_query` - -Required: - -- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `operation_name` (String) Name of operation on service. -- `resource_name` (String) APM resource. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. - -Optional: - -- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.apm_resource_stats_query` - -Required: - -- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. - -Optional: - -- `group_by` (List of String) Array of fields to group results by. -- `operation_name` (String) Name of operation on service. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. -- `resource_name` (String) APM resource. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.event_query` + +### Nested Schema for `widget.scatterplot_definition.request.x.security_query` Required: -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--event_query--compute)) -- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. -- `name` (String) The name of query for use in formulas. +- `index` (String) The name of the index to query. Optional: -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--event_query--group_by)) -- `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--event_query--search)) -- `storage` (String) Storage location (private beta). +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--security_query--multi_compute)) +- `search_query` (String) The search query to use. - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.event_query.compute` + +### Nested Schema for `widget.scatterplot_definition.request.x.security_query.compute_query` Required: -- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. +- `aggregation` (String) The aggregation method. Optional: -- `interval` (Number) A time interval in milliseconds. -- `metric` (String) The measurable attribute to compute. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.event_query.group_by` +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. -Required: -- `facet` (String) The event facet. + +### Nested Schema for `widget.scatterplot_definition.request.x.security_query.group_by` Optional: -- `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--query--event_query--group_by--sort)) +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--security_query--group_by--sort_query)) - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.event_query.group_by.sort` + +### Nested Schema for `widget.scatterplot_definition.request.x.security_query.group_by.sort_query` Required: -- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. Optional: -- `metric` (String) The metric used for sorting group by results. -- `order` (String) Direction of sort. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.event_query.search` - -Required: - -- `query` (String) The events search string. - - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.metric_query` - -Required: - -- `name` (String) The name of the query for use in formulas. -- `query` (String) The metrics query definition. - -Optional: +- `facet` (String) The facet name. -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.process_query` + +### Nested Schema for `widget.scatterplot_definition.request.x.security_query.multi_compute` Required: -- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. -- `metric` (String) The process metric name. -- `name` (String) The name of query for use in formulas. +- `aggregation` (String) The aggregation method. Optional: -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. -- `limit` (Number) The number of hits to return. -- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -- `tag_filters` (List of String) An array of tags to filter by. -- `text_filter` (String) The text to use as a filter. +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.query.slo_query` -Required: -- `data_source` (String) The data source for SLO queries. Valid values are `slo`. -- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. -- `slo_id` (String) ID of an SLO to query. + +### Nested Schema for `widget.scatterplot_definition.request.y` Optional: -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. -- `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - - +- `aggregator` (String) Aggregator used for the request. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--apm_query)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--process_query)) +- `q` (String) The metric query to use for this widget. +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--security_query)) - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.rum_query` + +### Nested Schema for `widget.scatterplot_definition.request.y.apm_query` Required: @@ -22623,13 +4589,13 @@ Required: Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--rum_query--multi_compute)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--apm_query--multi_compute)) - `search_query` (String) The search query to use. - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.rum_query.compute_query` + +### Nested Schema for `widget.scatterplot_definition.request.y.apm_query.compute_query` Required: @@ -22641,17 +4607,17 @@ Optional: - `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.rum_query.group_by` + +### Nested Schema for `widget.scatterplot_definition.request.y.apm_query.group_by` Optional: - `facet` (String) The facet name. - `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--rum_query--group_by--sort_query)) +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--apm_query--group_by--sort_query)) - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.rum_query.group_by.sort_query` + +### Nested Schema for `widget.scatterplot_definition.request.y.apm_query.group_by.sort_query` Required: @@ -22664,8 +4630,8 @@ Optional: - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.rum_query.multi_compute` + +### Nested Schema for `widget.scatterplot_definition.request.y.apm_query.multi_compute` Required: @@ -22678,8 +4644,8 @@ Optional: - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.security_query` + +### Nested Schema for `widget.scatterplot_definition.request.y.log_query` Required: @@ -22687,13 +4653,13 @@ Required: Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--security_query--multi_compute)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--log_query--multi_compute)) - `search_query` (String) The search query to use. - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.security_query.compute_query` + +### Nested Schema for `widget.scatterplot_definition.request.y.log_query.compute_query` Required: @@ -22705,17 +4671,17 @@ Optional: - `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.security_query.group_by` + +### Nested Schema for `widget.scatterplot_definition.request.y.log_query.group_by` Optional: - `facet` (String) The facet name. - `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--toplist_definition--request--security_query--group_by--sort_query)) +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--log_query--group_by--sort_query)) - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.security_query.group_by.sort_query` + +### Nested Schema for `widget.scatterplot_definition.request.y.log_query.group_by.sort_query` Required: @@ -22728,8 +4694,8 @@ Optional: - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.security_query.multi_compute` + +### Nested Schema for `widget.scatterplot_definition.request.y.log_query.multi_compute` Required: @@ -22742,314 +4708,262 @@ Optional: - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.toplist_definition.request.style` - -Optional: - -- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. - - + +### Nested Schema for `widget.scatterplot_definition.request.y.process_query` +Required: - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition` +- `metric` (String) Your chosen metric. Optional: -- `request` (Block List) Nested block describing the request to use when displaying the widget. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request)) -- `title` (String) The title of the widget. - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request` - -Optional: +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request--formula)) -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query)) - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request.formula` + +### Nested Schema for `widget.scatterplot_definition.request.y.rum_query` Required: -- `formula_expression` (String) A string expression built from queries, formulas, and functions. +- `index` (String) The name of the index to query. Optional: -- `alias` (String) An expression alias. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request--formula--conditional_formats)) -- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request--formula--limit)) -- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request--formula--style)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--rum_query--multi_compute)) +- `search_query` (String) The search query to use. - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request.formula.conditional_formats` + +### Nested Schema for `widget.scatterplot_definition.request.y.rum_query.compute_query` Required: -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. - -Optional: - -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request.formula.limit` - -Optional: - -- `count` (Number) The number of results to return. -- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request.formula.style` +- `aggregation` (String) The aggregation method. Optional: -- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. -- `palette_index` (Number) Index specifying which color to use within the palette. - +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request.query` + +### Nested Schema for `widget.scatterplot_definition.request.y.rum_query.group_by` Optional: -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--slo_query)) +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--rum_query--group_by--sort_query)) - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.apm_dependency_stats_query` + +### Nested Schema for `widget.scatterplot_definition.request.y.rum_query.group_by.sort_query` Required: -- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `operation_name` (String) Name of operation on service. -- `resource_name` (String) APM resource. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. Optional: -- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `facet` (String) The facet name. + - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.apm_resource_stats_query` + +### Nested Schema for `widget.scatterplot_definition.request.y.rum_query.multi_compute` Required: -- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. +- `aggregation` (String) The aggregation method. Optional: -- `group_by` (List of String) Array of fields to group results by. -- `operation_name` (String) Name of operation on service. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. -- `resource_name` (String) APM resource. +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.event_query` + +### Nested Schema for `widget.scatterplot_definition.request.y.security_query` Required: -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--event_query--compute)) -- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. -- `name` (String) The name of query for use in formulas. +- `index` (String) The name of the index to query. Optional: -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--event_query--group_by)) -- `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--event_query--search)) -- `storage` (String) Storage location (private beta). +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--security_query--multi_compute)) +- `search_query` (String) The search query to use. - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.event_query.compute` + +### Nested Schema for `widget.scatterplot_definition.request.y.security_query.compute_query` Required: -- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. +- `aggregation` (String) The aggregation method. Optional: -- `interval` (Number) A time interval in milliseconds. -- `metric` (String) The measurable attribute to compute. - - - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.event_query.group_by` +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. -Required: -- `facet` (String) The event facet. + +### Nested Schema for `widget.scatterplot_definition.request.y.security_query.group_by` Optional: -- `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--split_graph_definition--source_widget_definition--treemap_definition--request--query--event_query--group_by--sort)) +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--security_query--group_by--sort_query)) - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.event_query.group_by.sort` + +### Nested Schema for `widget.scatterplot_definition.request.y.security_query.group_by.sort_query` Required: -- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. Optional: -- `metric` (String) The metric used for sorting group by results. -- `order` (String) Direction of sort. Valid values are `asc`, `desc`. +- `facet` (String) The facet name. - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.event_query.search` + +### Nested Schema for `widget.scatterplot_definition.request.y.security_query.multi_compute` Required: -- `query` (String) The events search string. +- `aggregation` (String) The aggregation method. +Optional: +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.metric_query` -Required: -- `name` (String) The name of the query for use in formulas. -- `query` (String) The metrics query definition. -Optional: -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + +### Nested Schema for `widget.scatterplot_definition.xaxis` +Optional: - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.process_query` +- `include_zero` (Boolean) Always include zero or fit the axis to the data range. +- `label` (String) The label of the axis to display on the graph. +- `max` (String) Specify the maximum value to show on the Y-axis. +- `min` (String) Specify the minimum value to show on the Y-axis. +- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. -Required: -- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. -- `metric` (String) The process metric name. -- `name` (String) The name of query for use in formulas. + +### Nested Schema for `widget.scatterplot_definition.yaxis` Optional: -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. -- `limit` (Number) The number of hits to return. -- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -- `tag_filters` (List of String) An array of tags to filter by. -- `text_filter` (String) The text to use as a filter. +- `include_zero` (Boolean) Always include zero or fit the axis to the data range. +- `label` (String) The label of the axis to display on the graph. +- `max` (String) Specify the maximum value to show on the Y-axis. +- `min` (String) Specify the minimum value to show on the Y-axis. +- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + - -### Nested Schema for `widget.split_graph_definition.source_widget_definition.treemap_definition.request.query.slo_query` + +### Nested Schema for `widget.service_level_objective_definition` Required: -- `data_source` (String) The data source for SLO queries. Valid values are `slo`. -- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. -- `slo_id` (String) ID of an SLO to query. +- `slo_id` (String) The ID of the service level objective used by the widget. +- `time_windows` (List of String) A list of time windows to display in the widget. Valid values are `7d`, `30d`, `90d`, `week_to_date`, `previous_week`, `month_to_date`, `previous_month`, `global_time`. +- `view_mode` (String) The view mode for the widget. Valid values are `overall`, `component`, `both`. +- `view_type` (String) The type of view to use when displaying the widget. Only `detail` is supported. Optional: - `additional_query_filters` (String) Additional filters applied to the SLO query. -- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. -- `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - - - - +- `global_time_target` (String) The global time target of the widget. +- `show_error_budget` (Boolean) Whether to show the error budget or not. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). - -### Nested Schema for `widget.split_graph_definition.split_config` + +### Nested Schema for `widget.servicemap_definition` Required: -- `sort` (Block List, Min: 1, Max: 1) Controls the order in which graphs appear in the split. (see [below for nested schema](#nestedblock--widget--split_graph_definition--split_config--sort)) -- `split_dimensions` (Block List, Min: 1, Max: 1) The property by which the graph splits (see [below for nested schema](#nestedblock--widget--split_graph_definition--split_config--split_dimensions)) +- `filters` (List of String) Your environment and primary tag (or `*` if enabled for your account). +- `service` (String) The ID of the service to map. Optional: -- `limit` (Number) Maximum number of graphs to display in the widget. -- `static_splits` (Block List, Max: 100) The property by which the graph splits (see [below for nested schema](#nestedblock--widget--split_graph_definition--split_config--static_splits)) +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--servicemap_definition--custom_link)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). - -### Nested Schema for `widget.split_graph_definition.split_config.sort` + +### Nested Schema for `widget.servicemap_definition.custom_link` -Required: +Optional: -- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. -Optional: -- `compute` (Block List, Max: 1) Defines the metric and aggregation used as the sort value (see [below for nested schema](#nestedblock--widget--split_graph_definition--split_config--sort--compute)) - -### Nested Schema for `widget.split_graph_definition.split_config.sort.compute` + +### Nested Schema for `widget.slo_list_definition` Required: -- `metric` (String) The metric to use for sorting graphs. +- `request` (Block List, Min: 1, Max: 1) A nested block describing the request to use when displaying the widget. Exactly one `request` block is allowed. (see [below for nested schema](#nestedblock--widget--slo_list_definition--request)) Optional: -- `aggregation` (String) How to aggregate the sort metric for the purposes of ordering. - - +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). - -### Nested Schema for `widget.split_graph_definition.split_config.split_dimensions` + +### Nested Schema for `widget.slo_list_definition.request` Required: -- `one_graph_per` (String) The system interprets this attribute differently depending on the data source of the query being split. For metrics, it's a tag. For the events platform, it's an attribute or tag. - +- `query` (Block List, Min: 1, Max: 1) Updated SLO List widget. (see [below for nested schema](#nestedblock--widget--slo_list_definition--request--query)) +- `request_type` (String) The request type for the SLO List request. Valid values are `slo_list`. - -### Nested Schema for `widget.split_graph_definition.split_config.static_splits` + +### Nested Schema for `widget.slo_list_definition.request.query` Required: -- `split_vector` (Block List, Min: 1) The split graph list contains a graph for each value of the split dimension. (see [below for nested schema](#nestedblock--widget--split_graph_definition--split_config--static_splits--split_vector)) +- `query_string` (String) Widget query. + +Optional: + +- `limit` (Number) Maximum number of results to display in the table. Defaults to `100`. +- `sort` (Block List, Max: 1) The facet and order to sort the data, for example: `{"column": "status.sli", "order": "desc"}`. (see [below for nested schema](#nestedblock--widget--slo_list_definition--request--query--sort)) - -### Nested Schema for `widget.split_graph_definition.split_config.static_splits.split_vector` + +### Nested Schema for `widget.slo_list_definition.request.query.sort` Required: -- `tag_key` (String) -- `tag_values` (List of String) +- `column` (String) The facet path for the column. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. From c49a445d25791721dd8b2a381ce3b8295dd38884 Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Thu, 2 Nov 2023 12:20:51 -0400 Subject: [PATCH 38/48] validate request length --- datadog/resource_datadog_powerpack.go | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index c5010840e9..3c9aedf0c4 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -629,10 +629,17 @@ func normalizeDashboardWidgetDef(widgetDef map[string]interface{}) (map[string]i } if widgetDef["request"] != nil { + castWidgetDefReq := *widgetDef["request"].(*[]map[string]interface{}) + if len(castWidgetDefReq) == 0 { + diags = append(diags, diag.Diagnostic{ + Severity: diag.Error, + Summary: fmt.Sprintf("at least one request should be defined for widget: %s", widgetDef["type"]), + }) + return nil, diags + } // Distribution/change/heatmap widgets have a "requests" field, while API Spec has a "request" field // Here we set the "requests" field and remove "request" - widgetDefRequests := *widgetDef["request"].(*[]map[string]interface{}) - widgetDef["requests"] = widgetDefRequests + widgetDef["requests"] = castWidgetDefReq delete(widgetDef, "request") } return widgetDef, diags From d20e22e4487eee4587a7f80d52f62c483f939d41 Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Thu, 2 Nov 2023 12:23:09 -0400 Subject: [PATCH 39/48] improve live span error msg --- datadog/resource_datadog_powerpack.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index 3c9aedf0c4..3e15d8b2a7 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -623,7 +623,7 @@ func normalizeDashboardWidgetDef(widgetDef map[string]interface{}) (map[string]i if widgetDef["live_span"] != nil { diags = append(diags, diag.Diagnostic{ Severity: diag.Error, - Summary: fmt.Sprintf("live_span must be set at the powerpack level and will be applied to all widgets"), + Summary: fmt.Sprintf("live_span must be set for all powerpack resources (to be applied to all widgets within the powerpack)"), }) return nil, diags } From 181ae1014c5240f7bdffce4d8450fc9a187c30b7 Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Thu, 2 Nov 2023 12:51:32 -0400 Subject: [PATCH 40/48] clean up logic --- datadog/resource_datadog_powerpack.go | 148 +++++++++----------------- 1 file changed, 52 insertions(+), 96 deletions(-) diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index 6f355052d2..948978909f 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -619,28 +619,18 @@ func buildDatadogPowerpack(ctx context.Context, d *schema.ResourceData) (*datado func normalizeWidgetDefRequests(widgetDefRequests []map[string]interface{}) []map[string]interface{} { normalizedWidgetDefRequests := widgetDefRequests for i, widgetDefRequest := range normalizedWidgetDefRequests { - if widgetDefRequest["style"] != nil { - // TF generates a style list, whereas API expects a single element - widgetDefRequest["style"] = widgetDefRequest["style"].([]map[string]interface{})[0] - } - if widgetDefRequest["apm_stats_query"] != nil { - // TF generates an apm_stats_query list, whereas API expects a single element - widgetDefRequest["apm_stats_query"] = widgetDefRequest["apm_stats_query"].([]map[string]interface{})[0] - } - if widgetDefRequest["x"] != nil { - // TF generates a style list, whereas API expects a single element - widgetDefRequest["x"] = widgetDefRequest["x"].([]map[string]interface{})[0] - } - if widgetDefRequest["y"] != nil { - // TF generates a style list, whereas API expects a single element - widgetDefRequest["y"] = widgetDefRequest["y"].([]map[string]interface{})[0] - } - if widgetDefRequest["query"] != nil { - widgetDefRequest["query"] = widgetDefRequest["query"].([]map[string]interface{})[0] + for _, v := range []string{"style", "apm_stats_query", "x", "y", "query"} { + // Properties listed above are always a single value, not a list + if widgetDefRequest[v] != nil { + widgetDefRequest[v] = widgetDefRequest[v].([]map[string]interface{})[0] + } } - if widgetDefRequest["formula"] != nil { - widgetDefRequest["formulas"] = widgetDefRequest["formula"] - delete(widgetDefRequest, "formula") + for _, v := range []string{"formula"} { + // Properties listed above are defined as single, but API Spec expects a plural name + if widgetDefRequest[v] != nil { + widgetDefRequest[v+"s"] = widgetDefRequest[v] + delete(widgetDefRequest, v) + } } normalizedWidgetDefRequests[i] = widgetDefRequest } @@ -663,21 +653,14 @@ func normalizeDashboardWidgetDef(widgetDef map[string]interface{}) (map[string]i } if widgetDef["request"] != nil { - widgetDef["requests"] = castWidgetDefReq if widgetDef["type"] == "scatterplot" || widgetDef["type"] == "hostmap" { - // Because of course JUST one widget type expects requests to be a single value instead of a list + // Scatterplot and hostmap widgets expect a single requests object instead of a list widgetDefRequest := widgetDef["request"].([]map[string]interface{})[0] - if widgetDefRequest["fill"] != nil { - widgetDefRequest["fill"] = widgetDefRequest["fill"].([]map[string]interface{})[0] - } - if widgetDefRequest["size"] != nil { - widgetDefRequest["size"] = widgetDefRequest["size"].([]map[string]interface{})[0] - } - if widgetDefRequest["x"] != nil { - widgetDefRequest["x"] = widgetDefRequest["x"].([]map[string]interface{})[0] - } - if widgetDefRequest["y"] != nil { - widgetDefRequest["y"] = widgetDefRequest["y"].([]map[string]interface{})[0] + for _, v := range []string{"fill", "size", "x", "y"} { + // Properties listed above are always a single value, not a list + if widgetDefRequest[v] != nil { + widgetDefRequest[v] = widgetDefRequest[v].([]map[string]interface{})[0] + } } widgetDef["requests"] = widgetDefRequest } else { @@ -695,32 +678,23 @@ func normalizeDashboardWidgetDef(widgetDef map[string]interface{}) (map[string]i } delete(widgetDef, "request") } - if widgetDef["style"] != nil { - widgetDef["style"] = widgetDef["style"].([]map[string]interface{})[0] - } - if widgetDef["event"] != nil { - widgetDef["events"] = *widgetDef["event"].(*[]map[string]string) - delete(widgetDef, "event") - } - if widgetDef["input"] != nil { - widgetDef["inputs"] = *widgetDef["input"].(*[]map[string]interface{}) - delete(widgetDef, "input") - } - if widgetDef["xaxis"] != nil { - widgetDef["xaxis"] = (widgetDef["xaxis"].([]map[string]interface{}))[0] + for _, v := range []string{"style", "xaxis", "yaxis"} { + // Properties listed above are always a single value, not a list + if widgetDef[v] != nil { + widgetDef[v] = widgetDef[v].([]map[string]interface{})[0] + } } - if widgetDef["yaxis"] != nil { - widgetDef["yaxis"] = widgetDef["yaxis"].([]map[string]interface{})[0] + for _, v := range []string{"event", "custom_link", "input"} { + // Properties listed above are defined as single, but API Spec expects a plural name + if widgetDef[v] != nil { + widgetDef[v+"s"] = widgetDef[v] + delete(widgetDef, v) + } } if widgetDef["type"] == "log_stream" && widgetDef["sort"] != nil { - widgetDef["sort"] = widgetDef["sort"].([]map[string]interface{})[0] - } - if widgetDef["custom_link"] != nil { // Some widgets have a "custom_links" field, while API Spec has a "custom_link" field // Here we set the "custom_links" field and remove "custom_link" - widgetDefCustomLinks := *widgetDef["custom_link"].(*[]map[string]interface{}) - widgetDef["custom_links"] = widgetDefCustomLinks - delete(widgetDef, "custom_link") + widgetDef["sort"] = widgetDef["sort"].([]map[string]interface{})[0] } return widgetDef, diags } @@ -732,67 +706,49 @@ func normalizeTerraformWidgetDef(widgetDef map[string]interface{}) map[string]in if widgetDef["type"] == "scatterplot" || widgetDef["type"] == "hostmap" { // Because of course JUST one widget type expects requests to be a single value instead of a list widgetDefRequest := widgetDef["requests"].(map[string]interface{}) - if widgetDefRequest["fill"] != nil { - widgetDefRequest["fill"] = []interface{}{widgetDefRequest["fill"].(interface{})} - } - if widgetDefRequest["size"] != nil { - widgetDefRequest["size"] = []interface{}{widgetDefRequest["size"].(interface{})} - } - if widgetDefRequest["x"] != nil { - widgetDefRequest["x"] = []interface{}{widgetDefRequest["x"].(interface{})} - } - if widgetDefRequest["y"] != nil { - widgetDefRequest["y"] = []interface{}{widgetDefRequest["y"].(interface{})} + for _, v := range []string{"fill", "size", "x", "y"} { + // Properties listed above need to be converted from single values in the API to plural values for TF + if widgetDefRequest[v] != nil { + widgetDefRequest[v] = []interface{}{widgetDefRequest[v].(interface{})} + } } widgetDef["request"] = []interface{}{widgetDefRequest} } else { widgetDefRequests := widgetDef["requests"].([]interface{}) for i, widgetDefRequest := range widgetDefRequests { widgetDefRequestNormalized := widgetDefRequest.(map[string]interface{}) + for _, v := range []string{"style", "query", "apm_stats_query"} { + // Properties listed above need to be converted from single values in the API to plural values for TF + if widgetDefRequestNormalized[v] != nil { + widgetDefRequestNormalized[v] = []interface{}{widgetDefRequestNormalized[v].(interface{})} + } + } if widgetDefRequestNormalized["limit"] != nil { + // Dashboard widget can't typecast the float64 limit value so we need to convert it first widgetDefRequestNormalized["limit"] = int(widgetDefRequestNormalized["limit"].(float64)) } - if widgetDefRequestNormalized["style"] != nil { - widgetDefRequestNormalized["style"] = []interface{}{widgetDefRequestNormalized["style"]} - } - if widgetDefRequestNormalized["apm_stats_query"] != nil { - widgetDefRequestNormalized["apm_stats_query"] = []interface{}{widgetDefRequestNormalized["apm_stats_query"]} - } - if widgetDefRequestNormalized["query"] != nil { - widgetDefRequestNormalized["query"] = []interface{}{widgetDefRequestNormalized["query"].(interface{})} - } widgetDefRequests[i] = widgetDefRequestNormalized } widgetDef["request"] = widgetDefRequests } delete(widgetDef, "requests") } - // Dashboard TF widgets have a "custom_links" field, while API Spec has a "custom_link" field - // Here we set the "custom_link" field and remove "custom_links" - if widgetDef["custom_links"] != nil { - widgetDef["custom_link"] = widgetDef["custom_links"].([]interface{}) - delete(widgetDef, "custom_links") - } - if widgetDef["style"] != nil { - widgetDef["style"] = []interface{}{widgetDef["style"].(map[string]interface{})} - } - if widgetDef["xaxis"] != nil { - widgetDef["xaxis"] = []interface{}{widgetDef["xaxis"].(map[string]interface{})} + for _, v := range []string{"style", "xaxis", "yaxis", "y"} { + // Properties listed above need to be converted from single values in the API to plural values for TF + if widgetDef[v] != nil { + widgetDef[v] = []interface{}{widgetDef[v].(map[string]interface{})} + } } - if widgetDef["yaxis"] != nil { - widgetDef["yaxis"] = []interface{}{widgetDef["yaxis"].(map[string]interface{})} + for _, v := range []string{"custom_links", "inputs", "events"} { + // Properties listed above are defined as plural for the API Spec and need to be converted back to single values for TF + if widgetDef[v] != nil { + widgetDef[v[:len(v)-1]] = widgetDef[v] + delete(widgetDef, v) + } } if widgetDef["type"] == "log_stream" && widgetDef["sort"] != nil { widgetDef["sort"] = []interface{}{widgetDef["sort"].(map[string]interface{})} } - if widgetDef["events"] != nil { - widgetDef["event"] = widgetDef["events"] - delete(widgetDef, "events") - } - if widgetDef["inputs"] != nil { - widgetDef["input"] = widgetDef["inputs"] - delete(widgetDef, "inputs") - } // TF -> json conversion processes precision as float64, it needs to be converted to // an int value to be saved successfully if widgetDef["precision"] != nil { From a9a3fd27162300654a97d4178450ba6b8c15c845 Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Thu, 2 Nov 2023 12:59:09 -0400 Subject: [PATCH 41/48] fix docstrings --- datadog/resource_datadog_powerpack.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index 948978909f..2b90436a6c 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -692,8 +692,8 @@ func normalizeDashboardWidgetDef(widgetDef map[string]interface{}) (map[string]i } } if widgetDef["type"] == "log_stream" && widgetDef["sort"] != nil { - // Some widgets have a "custom_links" field, while API Spec has a "custom_link" field - // Here we set the "custom_links" field and remove "custom_link" + // For log stream only, sort is not a string value but an object + // that is a single value widgetDef["sort"] = widgetDef["sort"].([]map[string]interface{})[0] } return widgetDef, diags @@ -747,6 +747,8 @@ func normalizeTerraformWidgetDef(widgetDef map[string]interface{}) map[string]in } } if widgetDef["type"] == "log_stream" && widgetDef["sort"] != nil { + // For log stream only, sort is not a string value and we need to cast it from a + // single object to a list of objects for TF widgetDef["sort"] = []interface{}{widgetDef["sort"].(map[string]interface{})} } // TF -> json conversion processes precision as float64, it needs to be converted to From 16511523babfe958681c4bb13c538848a460bc55 Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Thu, 2 Nov 2023 17:43:04 -0400 Subject: [PATCH 42/48] treemap is not yet supported --- datadog/resource_datadog_powerpack.go | 2 -- 1 file changed, 2 deletions(-) diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index 2b90436a6c..bcfc136cee 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -867,8 +867,6 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) definition = datadogV1.TopologyMapWidgetDefinitionAsWidgetDefinition(buildDatadogTopologyMapDefinition(widgetDefinition)) case "trace_service": definition = datadogV1.ServiceSummaryWidgetDefinitionAsWidgetDefinition(buildDatadogTraceServiceDefinition(widgetDefinition)) - case "treemap": - definition = datadogV1.TreeMapWidgetDefinitionAsWidgetDefinition(buildDatadogTreemapDefinition(widgetDefinition)) case "group": diags = append(diags, diag.Diagnostic{ Severity: diag.Error, From 1dddafe3332a8123b39de112187aaa7ef0b3f1ba Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Mon, 6 Nov 2023 10:54:42 -0500 Subject: [PATCH 43/48] add query value support --- datadog/resource_datadog_powerpack.go | 2 ++ 1 file changed, 2 insertions(+) diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index ba31d400eb..be21dc8055 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -751,6 +751,8 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) definition = datadogV1.MonitorSummaryWidgetDefinitionAsWidgetDefinition(buildDatadogManageStatusDefinition(widgetDefinition)) case "note": definition = datadogV1.NoteWidgetDefinitionAsWidgetDefinition(buildDatadogNoteDefinition(widgetDefinition)) + case "query_value": + definition = datadogV1.QueryValueWidgetDefinitionAsWidgetDefinition(buildDatadogQueryValueDefinition(widgetDefinition)) case "servicemap": definition = datadogV1.ServiceMapWidgetDefinitionAsWidgetDefinition(buildDatadogServiceMapDefinition(widgetDefinition)) case "toplist": From 3aaea69808dde74e844bc7f51f3195bae0818651 Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Mon, 6 Nov 2023 10:58:04 -0500 Subject: [PATCH 44/48] docs + schema changes for all newly supported widgets in this pr --- datadog/resource_datadog_powerpack.go | 144 +- docs/resources/powerpack.md | 2008 ++++++++++++++++++++++++- 2 files changed, 2029 insertions(+), 123 deletions(-) diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index c42ba16518..93568a32b6 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -100,24 +100,24 @@ func getPowerpackWidgetSchema() map[string]*schema.Schema { Schema: getAlertGraphDefinitionSchema(), }, }, - // "alert_value_definition": { - // Type: schema.TypeList, - // Optional: true, - // MaxItems: 1, - // Description: "The definition for a Alert Value widget.", - // Elem: &schema.Resource{ - // Schema: getAlertValueDefinitionSchema(), - // }, - // }, - // "change_definition": { - // Type: schema.TypeList, - // Optional: true, - // MaxItems: 1, - // Description: "The definition for a Change widget.", - // Elem: &schema.Resource{ - // Schema: getChangeDefinitionSchema(), - // }, - // }, + "alert_value_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Alert Value widget.", + Elem: &schema.Resource{ + Schema: getAlertValueDefinitionSchema(), + }, + }, + "change_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Change widget.", + Elem: &schema.Resource{ + Schema: getChangeDefinitionSchema(), + }, + }, "check_status_definition": { Type: schema.TypeList, Optional: true, @@ -136,24 +136,24 @@ func getPowerpackWidgetSchema() map[string]*schema.Schema { // Schema: getDistributionDefinitionSchema(), // }, // }, - // "event_stream_definition": { - // Type: schema.TypeList, - // Optional: true, - // MaxItems: 1, - // Description: "The definition for a Event Stream widget.", - // Elem: &schema.Resource{ - // Schema: getEventStreamDefinitionSchema(), - // }, - // }, - // "event_timeline_definition": { - // Type: schema.TypeList, - // Optional: true, - // MaxItems: 1, - // Description: "The definition for a Event Timeline widget.", - // Elem: &schema.Resource{ - // Schema: getEventTimelineDefinitionSchema(), - // }, - // }, + "event_stream_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Event Stream widget.", + Elem: &schema.Resource{ + Schema: getEventStreamDefinitionSchema(), + }, + }, + "event_timeline_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Event Timeline widget.", + Elem: &schema.Resource{ + Schema: getEventTimelineDefinitionSchema(), + }, + }, "free_text_definition": { Type: schema.TypeList, Optional: true, @@ -217,15 +217,15 @@ func getPowerpackWidgetSchema() map[string]*schema.Schema { // Schema: getLogStreamDefinitionSchema(), // }, // }, - // "manage_status_definition": { - // Type: schema.TypeList, - // Optional: true, - // MaxItems: 1, - // Description: "The definition for an Manage Status widget.", - // Elem: &schema.Resource{ - // Schema: getManageStatusDefinitionSchema(), - // }, - // }, + "manage_status_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for an Manage Status widget.", + Elem: &schema.Resource{ + Schema: getManageStatusDefinitionSchema(), + }, + }, "note_definition": { Type: schema.TypeList, Optional: true, @@ -235,15 +235,15 @@ func getPowerpackWidgetSchema() map[string]*schema.Schema { Schema: getNoteDefinitionSchema(), }, }, - // "query_value_definition": { - // Type: schema.TypeList, - // Optional: true, - // MaxItems: 1, - // Description: "The definition for a Query Value widget.", - // Elem: &schema.Resource{ - // Schema: getQueryValueDefinitionSchema(), - // }, - // }, + "query_value_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Query Value widget.", + Elem: &schema.Resource{ + Schema: getQueryValueDefinitionSchema(), + }, + }, // "query_table_definition": { // Type: schema.TypeList, // Optional: true, @@ -307,15 +307,15 @@ func getPowerpackWidgetSchema() map[string]*schema.Schema { // Schema: getTimeseriesDefinitionSchema(), // }, // }, - // "toplist_definition": { - // Type: schema.TypeList, - // Optional: true, - // MaxItems: 1, - // Description: "The definition for a Toplist widget.", - // Elem: &schema.Resource{ - // Schema: getToplistDefinitionSchema(), - // }, - // }, + "toplist_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Toplist widget.", + Elem: &schema.Resource{ + Schema: getToplistDefinitionSchema(), + }, + }, // "topology_map_definition": { // Type: schema.TypeList, // Optional: true, @@ -325,15 +325,15 @@ func getPowerpackWidgetSchema() map[string]*schema.Schema { // Schema: getTopologyMapDefinitionSchema(), // }, // }, - // "trace_service_definition": { - // Type: schema.TypeList, - // Optional: true, - // MaxItems: 1, - // Description: "The definition for a Trace Service widget.", - // Elem: &schema.Resource{ - // Schema: getTraceServiceDefinitionSchema(), - // }, - // }, + "trace_service_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Trace Service widget.", + Elem: &schema.Resource{ + Schema: getTraceServiceDefinitionSchema(), + }, + }, // "treemap_definition": { // Type: schema.TypeList, // Optional: true, diff --git a/docs/resources/powerpack.md b/docs/resources/powerpack.md index d22138bb7f..144a79c793 100644 --- a/docs/resources/powerpack.md +++ b/docs/resources/powerpack.md @@ -47,12 +47,20 @@ Optional: Optional: - `alert_graph_definition` (Block List, Max: 1) The definition for a Alert Graph widget. (see [below for nested schema](#nestedblock--widget--alert_graph_definition)) +- `alert_value_definition` (Block List, Max: 1) The definition for a Alert Value widget. (see [below for nested schema](#nestedblock--widget--alert_value_definition)) +- `change_definition` (Block List, Max: 1) The definition for a Change widget. (see [below for nested schema](#nestedblock--widget--change_definition)) - `check_status_definition` (Block List, Max: 1) The definition for a Check Status widget. (see [below for nested schema](#nestedblock--widget--check_status_definition)) +- `event_stream_definition` (Block List, Max: 1) The definition for a Event Stream widget. (see [below for nested schema](#nestedblock--widget--event_stream_definition)) +- `event_timeline_definition` (Block List, Max: 1) The definition for a Event Timeline widget. (see [below for nested schema](#nestedblock--widget--event_timeline_definition)) - `free_text_definition` (Block List, Max: 1) The definition for a Free Text widget. (see [below for nested schema](#nestedblock--widget--free_text_definition)) - `iframe_definition` (Block List, Max: 1) The definition for an Iframe widget. (see [below for nested schema](#nestedblock--widget--iframe_definition)) - `image_definition` (Block List, Max: 1) The definition for an Image widget (see [below for nested schema](#nestedblock--widget--image_definition)) +- `manage_status_definition` (Block List, Max: 1) The definition for an Manage Status widget. (see [below for nested schema](#nestedblock--widget--manage_status_definition)) - `note_definition` (Block List, Max: 1) The definition for a Note widget. (see [below for nested schema](#nestedblock--widget--note_definition)) +- `query_value_definition` (Block List, Max: 1) The definition for a Query Value widget. (see [below for nested schema](#nestedblock--widget--query_value_definition)) - `servicemap_definition` (Block List, Max: 1) The definition for a Service Map widget. (see [below for nested schema](#nestedblock--widget--servicemap_definition)) +- `toplist_definition` (Block List, Max: 1) The definition for a Toplist widget. (see [below for nested schema](#nestedblock--widget--toplist_definition)) +- `trace_service_definition` (Block List, Max: 1) The definition for a Trace Service widget. (see [below for nested schema](#nestedblock--widget--trace_service_definition)) - `widget_layout` (Block List, Max: 1) The layout of the widget on a 'free' dashboard. (see [below for nested schema](#nestedblock--widget--widget_layout)) Read-Only: @@ -75,109 +83,2007 @@ Optional: - `title_size` (String) The size of the widget's title (defaults to 16). - -### Nested Schema for `widget.check_status_definition` + +### Nested Schema for `widget.alert_value_definition` Required: -- `check` (String) The check to use in the widget. -- `grouping` (String) The kind of grouping to use. Valid values are `check`, `cluster`. +- `alert_id` (String) The ID of the monitor used by the widget. Optional: -- `group` (String) The check group to use in the widget. -- `group_by` (List of String) When `grouping = "cluster"`, indicates a list of tags to use for grouping. +- `precision` (Number) The precision to use when displaying the value. Use `*` for maximum precision. +- `text_align` (String) The alignment of the text in the widget. Valid values are `center`, `left`, `right`. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). +- `unit` (String) The unit for the value displayed in the widget. + + + +### Nested Schema for `widget.change_definition` + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--change_definition--custom_link)) - `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `tags` (List of String) A list of tags to use in the widget. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple request blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the request block). (see [below for nested schema](#nestedblock--widget--change_definition--request)) - `title` (String) The title of the widget. - `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. - `title_size` (String) The size of the widget's title (defaults to 16). + +### Nested Schema for `widget.change_definition.custom_link` - -### Nested Schema for `widget.free_text_definition` +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.change_definition.request` + +Optional: + +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--change_definition--request--apm_query)) +- `change_type` (String) Whether to show absolute or relative change. Valid values are `absolute`, `relative`. +- `compare_to` (String) Choose from when to compare current data to. Valid values are `hour_before`, `day_before`, `week_before`, `month_before`. +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--change_definition--request--formula)) +- `increase_good` (Boolean) A Boolean indicating whether an increase in the value is good (displayed in green) or not (displayed in red). +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--change_definition--request--log_query)) +- `order_by` (String) What to order by. Valid values are `change`, `name`, `present`, `past`. +- `order_dir` (String) Widget sorting method. Valid values are `asc`, `desc`. +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--change_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--change_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--change_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--change_definition--request--security_query)) +- `show_present` (Boolean) If set to `true`, displays the current value. + + +### Nested Schema for `widget.change_definition.request.apm_query` Required: -- `text` (String) The text to display in the widget. +- `index` (String) The name of the index to query. Optional: -- `color` (String) The color of the text in the widget. -- `font_size` (String) The size of the text in the widget. -- `text_align` (String) The alignment of the text in the widget. Valid values are `center`, `left`, `right`. +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--change_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--change_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--change_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + +### Nested Schema for `widget.change_definition.request.apm_query.compute_query` - -### Nested Schema for `widget.iframe_definition` +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.change_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--change_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.change_definition.request.apm_query.group_by.sort_query` Required: -- `url` (String) The URL to use as a data source for the widget. +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. +Optional: + +- `facet` (String) The facet name. - -### Nested Schema for `widget.image_definition` + + + +### Nested Schema for `widget.change_definition.request.apm_query.multi_compute` Required: -- `url` (String) The URL to use as a data source for the widget. +- `aggregation` (String) The aggregation method. Optional: -- `has_background` (Boolean) Whether to display a background or not. Defaults to `true`. -- `has_border` (Boolean) Whether to display a border or not. Defaults to `true`. -- `horizontal_align` (String) The horizontal alignment for the widget. Valid values are `center`, `left`, `right`. -- `margin` (String) The margins to use around the image. Note: `small` and `large` values are deprecated. Valid values are `sm`, `md`, `lg`, `small`, `large`. -- `sizing` (String) The preferred method to adapt the dimensions of the image. The values are based on the image `object-fit` CSS properties. Note: `zoom`, `fit` and `center` values are deprecated. Valid values are `fill`, `contain`, `cover`, `none`, `scale-down`, `zoom`, `fit`, `center`. -- `url_dark_theme` (String) The URL in dark mode to use as a data source for the widget. -- `vertical_align` (String) The vertical alignment for the widget. Valid values are `center`, `top`, `bottom`. +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.note_definition` + + +### Nested Schema for `widget.change_definition.request.formula` Required: -- `content` (String) The content of the note. +- `formula_expression` (String) A string expression built from queries, formulas, and functions. Optional: -- `background_color` (String) The background color of the note. -- `font_size` (String) The size of the text. -- `has_padding` (Boolean) Whether to add padding or not. Defaults to `true`. -- `show_tick` (Boolean) Whether to show a tick or not. -- `text_align` (String) The alignment of the widget's text. Valid values are `center`, `left`, `right`. -- `tick_edge` (String) When `tick = true`, a string indicating on which side of the widget the tick should be displayed. Valid values are `bottom`, `left`, `right`, `top`. -- `tick_pos` (String) When `tick = true`, a string with a percent sign indicating the position of the tick, for example: `tick_pos = "50%"` is centered alignment. -- `vertical_align` (String) The vertical alignment for the widget. Valid values are `center`, `top`, `bottom`. +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--change_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--change_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--change_definition--request--formula--style)) + +### Nested Schema for `widget.change_definition.request.formula.conditional_formats` - -### Nested Schema for `widget.servicemap_definition` +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.change_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.change_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.change_definition.request.log_query` Required: -- `filters` (List of String) Your environment and primary tag (or `*` if enabled for your account). -- `service` (String) The ID of the service to map. +- `index` (String) The name of the index to query. Optional: -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--servicemap_definition--custom_link)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--change_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--change_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--change_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. - -### Nested Schema for `widget.servicemap_definition.custom_link` + +### Nested Schema for `widget.change_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. Optional: -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.change_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--change_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.change_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.change_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.change_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.change_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--change_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--change_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--change_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--change_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--change_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--change_definition--request--query--slo_query)) + + +### Nested Schema for `widget.change_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.change_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.change_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--change_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--change_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--change_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.change_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.change_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--change_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.change_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.change_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.change_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.change_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.change_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.change_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--change_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--change_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--change_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.change_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.change_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--change_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.change_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.change_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.change_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--change_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--change_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--change_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.change_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.change_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--change_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.change_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.change_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + + +### Nested Schema for `widget.check_status_definition` + +Required: + +- `check` (String) The check to use in the widget. +- `grouping` (String) The kind of grouping to use. Valid values are `check`, `cluster`. + +Optional: + +- `group` (String) The check group to use in the widget. +- `group_by` (List of String) When `grouping = "cluster"`, indicates a list of tags to use for grouping. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `tags` (List of String) A list of tags to use in the widget. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + + +### Nested Schema for `widget.event_stream_definition` + +Required: + +- `query` (String) The query to use in the widget. + +Optional: + +- `event_size` (String) The size to use to display an event. Valid values are `s`, `l`. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `tags_execution` (String) The execution method for multi-value filters, options: `and` or `or`. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + + +### Nested Schema for `widget.event_timeline_definition` + +Required: + +- `query` (String) The query to use in the widget. + +Optional: + +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `tags_execution` (String) The execution method for multi-value filters, options: `and` or `or`. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + + +### Nested Schema for `widget.free_text_definition` + +Required: + +- `text` (String) The text to display in the widget. + +Optional: + +- `color` (String) The color of the text in the widget. +- `font_size` (String) The size of the text in the widget. +- `text_align` (String) The alignment of the text in the widget. Valid values are `center`, `left`, `right`. + + + +### Nested Schema for `widget.iframe_definition` + +Required: + +- `url` (String) The URL to use as a data source for the widget. + + + +### Nested Schema for `widget.image_definition` + +Required: + +- `url` (String) The URL to use as a data source for the widget. + +Optional: + +- `has_background` (Boolean) Whether to display a background or not. Defaults to `true`. +- `has_border` (Boolean) Whether to display a border or not. Defaults to `true`. +- `horizontal_align` (String) The horizontal alignment for the widget. Valid values are `center`, `left`, `right`. +- `margin` (String) The margins to use around the image. Note: `small` and `large` values are deprecated. Valid values are `sm`, `md`, `lg`, `small`, `large`. +- `sizing` (String) The preferred method to adapt the dimensions of the image. The values are based on the image `object-fit` CSS properties. Note: `zoom`, `fit` and `center` values are deprecated. Valid values are `fill`, `contain`, `cover`, `none`, `scale-down`, `zoom`, `fit`, `center`. +- `url_dark_theme` (String) The URL in dark mode to use as a data source for the widget. +- `vertical_align` (String) The vertical alignment for the widget. Valid values are `center`, `top`, `bottom`. + + + +### Nested Schema for `widget.manage_status_definition` + +Required: + +- `query` (String) The query to use in the widget. + +Optional: + +- `color_preference` (String) Whether to colorize text or background. Valid values are `background`, `text`. +- `display_format` (String) The display setting to use. Valid values are `counts`, `countsAndList`, `list`. +- `hide_zero_counts` (Boolean) A Boolean indicating whether to hide empty categories. +- `show_last_triggered` (Boolean) A Boolean indicating whether to show when monitors/groups last triggered. +- `show_priority` (Boolean) Whether to show the priorities column. +- `sort` (String) The method to sort the monitors. Valid values are `name`, `group`, `status`, `tags`, `triggered`, `group,asc`, `group,desc`, `name,asc`, `name,desc`, `status,asc`, `status,desc`, `tags,asc`, `tags,desc`, `triggered,asc`, `triggered,desc`, `priority,asc`, `priority,desc`. +- `summary_type` (String) The summary type to use. Valid values are `monitors`, `groups`, `combined`. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + + +### Nested Schema for `widget.note_definition` + +Required: + +- `content` (String) The content of the note. + +Optional: + +- `background_color` (String) The background color of the note. +- `font_size` (String) The size of the text. +- `has_padding` (Boolean) Whether to add padding or not. Defaults to `true`. +- `show_tick` (Boolean) Whether to show a tick or not. +- `text_align` (String) The alignment of the widget's text. Valid values are `center`, `left`, `right`. +- `tick_edge` (String) When `tick = true`, a string indicating on which side of the widget the tick should be displayed. Valid values are `bottom`, `left`, `right`, `top`. +- `tick_pos` (String) When `tick = true`, a string with a percent sign indicating the position of the tick, for example: `tick_pos = "50%"` is centered alignment. +- `vertical_align` (String) The vertical alignment for the widget. Valid values are `center`, `top`, `bottom`. + + + +### Nested Schema for `widget.query_value_definition` + +Optional: + +- `autoscale` (Boolean) A Boolean indicating whether to automatically scale the tile. +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--custom_link)) +- `custom_unit` (String) The unit for the value displayed in the widget. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `precision` (Number) The precision to use when displaying the tile. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--query_value_definition--request)) +- `text_align` (String) The alignment of the widget's text. Valid values are `center`, `left`, `right`. +- `timeseries_background` (Block List, Max: 1) Set a timeseries on the widget background. (see [below for nested schema](#nestedblock--widget--query_value_definition--timeseries_background)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.query_value_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.query_value_definition.request` + +Optional: + +- `aggregator` (String) The aggregator to use for time aggregation. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--apm_query)) +- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--audit_query)) +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--conditional_formats)) +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--query_value_definition--request--formula)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--security_query)) + + +### Nested Schema for `widget.query_value_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.query_value_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.query_value_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.query_value_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.query_value_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.query_value_definition.request.audit_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--audit_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--audit_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--audit_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.query_value_definition.request.audit_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.query_value_definition.request.audit_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--audit_query--group_by--sort_query)) + + +### Nested Schema for `widget.query_value_definition.request.audit_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.query_value_definition.request.audit_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.query_value_definition.request.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.query_value_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--formula--style)) + + +### Nested Schema for `widget.query_value_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.query_value_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.query_value_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.query_value_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.query_value_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.query_value_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.query_value_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.query_value_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.query_value_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.query_value_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--slo_query)) + + +### Nested Schema for `widget.query_value_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.query_value_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.query_value_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.query_value_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.query_value_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.query_value_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.query_value_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.query_value_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.query_value_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.query_value_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.query_value_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.query_value_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.query_value_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.query_value_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.query_value_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.query_value_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.query_value_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.query_value_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.query_value_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.query_value_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + +### Nested Schema for `widget.query_value_definition.timeseries_background` + +Required: + +- `type` (String) Whether the Timeseries is made using an area or bars. Valid values are `bars`, `area`. + +Optional: + +- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--timeseries_background--yaxis)) + + +### Nested Schema for `widget.query_value_definition.timeseries_background.yaxis` + +Optional: + +- `include_zero` (Boolean) Always include zero or fit the axis to the data range. +- `label` (String) The label of the axis to display on the graph. +- `max` (String) Specify the maximum value to show on the Y-axis. +- `min` (String) Specify the minimum value to show on the Y-axis. +- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + + + + + +### Nested Schema for `widget.servicemap_definition` + +Required: + +- `filters` (List of String) Your environment and primary tag (or `*` if enabled for your account). +- `service` (String) The ID of the service to map. + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--servicemap_definition--custom_link)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.servicemap_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + + +### Nested Schema for `widget.toplist_definition` + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--toplist_definition--custom_link)) +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--toplist_definition--request)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.toplist_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.toplist_definition.request` + +Optional: + +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--apm_query)) +- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--audit_query)) +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background, depending on a rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--conditional_formats)) +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--toplist_definition--request--formula)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--toplist_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--security_query)) +- `style` (Block List, Max: 1) Define request for the widget's style. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--style)) + + +### Nested Schema for `widget.toplist_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.toplist_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.toplist_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.toplist_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.toplist_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.toplist_definition.request.audit_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--audit_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--audit_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--audit_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.toplist_definition.request.audit_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.toplist_definition.request.audit_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--audit_query--group_by--sort_query)) + + +### Nested Schema for `widget.toplist_definition.request.audit_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.toplist_definition.request.audit_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.toplist_definition.request.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.toplist_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--formula--style)) + + +### Nested Schema for `widget.toplist_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.toplist_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.toplist_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.toplist_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.toplist_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.toplist_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.toplist_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.toplist_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.toplist_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.toplist_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--query--slo_query)) + + +### Nested Schema for `widget.toplist_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.toplist_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.toplist_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.toplist_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.toplist_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.toplist_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.toplist_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.toplist_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.toplist_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.toplist_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.toplist_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.toplist_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.toplist_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.toplist_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.toplist_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.toplist_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.toplist_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.toplist_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--toplist_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.toplist_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.toplist_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.toplist_definition.request.style` + +Optional: + +- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. + + + + + +### Nested Schema for `widget.trace_service_definition` + +Required: + +- `env` (String) APM environment. +- `service` (String) APM service. +- `span_name` (String) APM span name + +Optional: + +- `display_format` (String) The number of columns to display. Valid values are `one_column`, `two_column`, `three_column`. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `show_breakdown` (Boolean) Whether to show the latency breakdown or not. +- `show_distribution` (Boolean) Whether to show the latency distribution or not. +- `show_errors` (Boolean) Whether to show the error metrics or not. +- `show_hits` (Boolean) Whether to show the hits metrics or not +- `show_latency` (Boolean) Whether to show the latency metrics or not. +- `show_resource_list` (Boolean) Whether to show the resource list or not. +- `size_format` (String) The size of the widget. Valid values are `small`, `medium`, `large`. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). From 90d1baf082abbc939ad0b0a4a703f96faac95606 Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Mon, 6 Nov 2023 11:22:39 -0500 Subject: [PATCH 45/48] docs + schema changes for all newly supported widgets in this pr --- datadog/resource_datadog_powerpack.go | 162 +- docs/resources/powerpack.md | 3144 ++++++++++++++++++++++--- 2 files changed, 2918 insertions(+), 388 deletions(-) diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index f7471e9ef1..822612f319 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -127,15 +127,15 @@ func getPowerpackWidgetSchema() map[string]*schema.Schema { Schema: getCheckStatusDefinitionSchema(), }, }, - // "distribution_definition": { - // Type: schema.TypeList, - // Optional: true, - // MaxItems: 1, - // Description: "The definition for a Distribution widget.", - // Elem: &schema.Resource{ - // Schema: getDistributionDefinitionSchema(), - // }, - // }, + "distribution_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Distribution widget.", + Elem: &schema.Resource{ + Schema: getDistributionDefinitionSchema(), + }, + }, "event_stream_definition": { Type: schema.TypeList, Optional: true, @@ -163,24 +163,24 @@ func getPowerpackWidgetSchema() map[string]*schema.Schema { Schema: getFreeTextDefinitionSchema(), }, }, - // "heatmap_definition": { - // Type: schema.TypeList, - // Optional: true, - // MaxItems: 1, - // Description: "The definition for a Heatmap widget.", - // Elem: &schema.Resource{ - // Schema: getHeatmapDefinitionSchema(), - // }, - // }, - // "hostmap_definition": { - // Type: schema.TypeList, - // Optional: true, - // MaxItems: 1, - // Description: "The definition for a Hostmap widget.", - // Elem: &schema.Resource{ - // Schema: getHostmapDefinitionSchema(), - // }, - // }, + "heatmap_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Heatmap widget.", + Elem: &schema.Resource{ + Schema: getHeatmapDefinitionSchema(), + }, + }, + "hostmap_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Hostmap widget.", + Elem: &schema.Resource{ + Schema: getHostmapDefinitionSchema(), + }, + }, "iframe_definition": { Type: schema.TypeList, Optional: true, @@ -199,24 +199,24 @@ func getPowerpackWidgetSchema() map[string]*schema.Schema { Schema: getImageDefinitionSchema(), }, }, - // "list_stream_definition": { - // Type: schema.TypeList, - // Optional: true, - // MaxItems: 1, - // Description: "The definition for a List Stream widget.", - // Elem: &schema.Resource{ - // Schema: getListStreamDefinitionSchema(), - // }, - // }, - // "log_stream_definition": { - // Type: schema.TypeList, - // Optional: true, - // MaxItems: 1, - // Description: "The definition for an Log Stream widget.", - // Elem: &schema.Resource{ - // Schema: getLogStreamDefinitionSchema(), - // }, - // }, + "list_stream_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a List Stream widget.", + Elem: &schema.Resource{ + Schema: getListStreamDefinitionSchema(), + }, + }, + "log_stream_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for an Log Stream widget.", + Elem: &schema.Resource{ + Schema: getLogStreamDefinitionSchema(), + }, + }, "manage_status_definition": { Type: schema.TypeList, Optional: true, @@ -253,15 +253,15 @@ func getPowerpackWidgetSchema() map[string]*schema.Schema { // Schema: getQueryTableDefinitionSchema(), // }, // }, - // "scatterplot_definition": { - // Type: schema.TypeList, - // Optional: true, - // MaxItems: 1, - // Description: "The definition for a Scatterplot widget.", - // Elem: &schema.Resource{ - // Schema: getScatterplotDefinitionSchema(), - // }, - // }, + "scatterplot_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Scatterplot widget.", + Elem: &schema.Resource{ + Schema: getScatterplotDefinitionSchema(), + }, + }, "servicemap_definition": { Type: schema.TypeList, Optional: true, @@ -271,15 +271,15 @@ func getPowerpackWidgetSchema() map[string]*schema.Schema { Schema: getServiceMapDefinitionSchema(), }, }, - // "service_level_objective_definition": { - // Type: schema.TypeList, - // Optional: true, - // MaxItems: 1, - // Description: "The definition for a Service Level Objective widget.", - // Elem: &schema.Resource{ - // Schema: getServiceLevelObjectiveDefinitionSchema(), - // }, - // }, + "service_level_objective_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Service Level Objective widget.", + Elem: &schema.Resource{ + Schema: getServiceLevelObjectiveDefinitionSchema(), + }, + }, // "slo_list_definition": { // Type: schema.TypeList, // Optional: true, @@ -316,15 +316,15 @@ func getPowerpackWidgetSchema() map[string]*schema.Schema { Schema: getToplistDefinitionSchema(), }, }, - // "topology_map_definition": { - // Type: schema.TypeList, - // Optional: true, - // MaxItems: 1, - // Description: "The definition for a Topology Map widget.", - // Elem: &schema.Resource{ - // Schema: getTopologyMapDefinitionSchema(), - // }, - // }, + "topology_map_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Topology Map widget.", + Elem: &schema.Resource{ + Schema: getTopologyMapDefinitionSchema(), + }, + }, "trace_service_definition": { Type: schema.TypeList, Optional: true, @@ -352,15 +352,15 @@ func getPowerpackWidgetSchema() map[string]*schema.Schema { // Schema: getGeomapDefinitionSchema(), // }, // }, - // "run_workflow_definition": { - // Type: schema.TypeList, - // Optional: true, - // MaxItems: 1, - // Description: "The definition for a Run Workflow widget.", - // Elem: &schema.Resource{ - // Schema: getRunWorkflowDefinitionSchema(), - // }, - // }, + "run_workflow_definition": { + Type: schema.TypeList, + Optional: true, + MaxItems: 1, + Description: "The definition for a Run Workflow widget.", + Elem: &schema.Resource{ + Schema: getRunWorkflowDefinitionSchema(), + }, + }, } } diff --git a/docs/resources/powerpack.md b/docs/resources/powerpack.md index 144a79c793..b233b0d46e 100644 --- a/docs/resources/powerpack.md +++ b/docs/resources/powerpack.md @@ -50,16 +50,25 @@ Optional: - `alert_value_definition` (Block List, Max: 1) The definition for a Alert Value widget. (see [below for nested schema](#nestedblock--widget--alert_value_definition)) - `change_definition` (Block List, Max: 1) The definition for a Change widget. (see [below for nested schema](#nestedblock--widget--change_definition)) - `check_status_definition` (Block List, Max: 1) The definition for a Check Status widget. (see [below for nested schema](#nestedblock--widget--check_status_definition)) +- `distribution_definition` (Block List, Max: 1) The definition for a Distribution widget. (see [below for nested schema](#nestedblock--widget--distribution_definition)) - `event_stream_definition` (Block List, Max: 1) The definition for a Event Stream widget. (see [below for nested schema](#nestedblock--widget--event_stream_definition)) - `event_timeline_definition` (Block List, Max: 1) The definition for a Event Timeline widget. (see [below for nested schema](#nestedblock--widget--event_timeline_definition)) - `free_text_definition` (Block List, Max: 1) The definition for a Free Text widget. (see [below for nested schema](#nestedblock--widget--free_text_definition)) +- `heatmap_definition` (Block List, Max: 1) The definition for a Heatmap widget. (see [below for nested schema](#nestedblock--widget--heatmap_definition)) +- `hostmap_definition` (Block List, Max: 1) The definition for a Hostmap widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition)) - `iframe_definition` (Block List, Max: 1) The definition for an Iframe widget. (see [below for nested schema](#nestedblock--widget--iframe_definition)) - `image_definition` (Block List, Max: 1) The definition for an Image widget (see [below for nested schema](#nestedblock--widget--image_definition)) +- `list_stream_definition` (Block List, Max: 1) The definition for a List Stream widget. (see [below for nested schema](#nestedblock--widget--list_stream_definition)) +- `log_stream_definition` (Block List, Max: 1) The definition for an Log Stream widget. (see [below for nested schema](#nestedblock--widget--log_stream_definition)) - `manage_status_definition` (Block List, Max: 1) The definition for an Manage Status widget. (see [below for nested schema](#nestedblock--widget--manage_status_definition)) - `note_definition` (Block List, Max: 1) The definition for a Note widget. (see [below for nested schema](#nestedblock--widget--note_definition)) - `query_value_definition` (Block List, Max: 1) The definition for a Query Value widget. (see [below for nested schema](#nestedblock--widget--query_value_definition)) +- `run_workflow_definition` (Block List, Max: 1) The definition for a Run Workflow widget. (see [below for nested schema](#nestedblock--widget--run_workflow_definition)) +- `scatterplot_definition` (Block List, Max: 1) The definition for a Scatterplot widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition)) +- `service_level_objective_definition` (Block List, Max: 1) The definition for a Service Level Objective widget. (see [below for nested schema](#nestedblock--widget--service_level_objective_definition)) - `servicemap_definition` (Block List, Max: 1) The definition for a Service Map widget. (see [below for nested schema](#nestedblock--widget--servicemap_definition)) - `toplist_definition` (Block List, Max: 1) The definition for a Toplist widget. (see [below for nested schema](#nestedblock--widget--toplist_definition)) +- `topology_map_definition` (Block List, Max: 1) The definition for a Topology Map widget. (see [below for nested schema](#nestedblock--widget--topology_map_definition)) - `trace_service_definition` (Block List, Max: 1) The definition for a Trace Service widget. (see [below for nested schema](#nestedblock--widget--trace_service_definition)) - `widget_layout` (Block List, Max: 1) The layout of the widget on a 'free' dashboard. (see [below for nested schema](#nestedblock--widget--widget_layout)) @@ -654,166 +663,2643 @@ Optional: - `title_size` (String) The size of the widget's title (defaults to 16). + +### Nested Schema for `widget.distribution_definition` + +Optional: + +- `legend_size` (String) The size of the legend displayed in the widget. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple request blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the request block). (see [below for nested schema](#nestedblock--widget--distribution_definition--request)) +- `show_legend` (Boolean) Whether or not to show the legend on this widget. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.distribution_definition.request` + +Optional: + +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--apm_query)) +- `apm_stats_query` (Block List, Max: 1) (see [below for nested schema](#nestedblock--widget--distribution_definition--request--apm_stats_query)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--security_query)) +- `style` (Block List, Max: 1) The style of the widget graph. One nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--style)) + + +### Nested Schema for `widget.distribution_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.distribution_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.distribution_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.distribution_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.distribution_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.distribution_definition.request.apm_stats_query` + +Required: + +- `env` (String) The environment name. +- `name` (String) The operation name associated with the service. +- `primary_tag` (String) The organization's host group name and value. +- `row_type` (String) The level of detail for the request. Valid values are `service`, `resource`, `span`. +- `service` (String) The service name. + +Optional: + +- `columns` (Block List) Column properties used by the front end for display. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--apm_stats_query--columns)) +- `resource` (String) The resource name. + + +### Nested Schema for `widget.distribution_definition.request.apm_stats_query.columns` + +Required: + +- `name` (String) The column name. + +Optional: + +- `alias` (String) A user-assigned alias for the column. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.distribution_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.distribution_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.distribution_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.distribution_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.distribution_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.distribution_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.distribution_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.distribution_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.distribution_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.distribution_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.distribution_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.distribution_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.distribution_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.distribution_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--distribution_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.distribution_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.distribution_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.distribution_definition.request.style` + +Optional: + +- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. + + + + ### Nested Schema for `widget.event_stream_definition` Required: -- `query` (String) The query to use in the widget. +- `query` (String) The query to use in the widget. + +Optional: + +- `event_size` (String) The size to use to display an event. Valid values are `s`, `l`. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `tags_execution` (String) The execution method for multi-value filters, options: `and` or `or`. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + + +### Nested Schema for `widget.event_timeline_definition` + +Required: + +- `query` (String) The query to use in the widget. + +Optional: + +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `tags_execution` (String) The execution method for multi-value filters, options: `and` or `or`. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + + +### Nested Schema for `widget.free_text_definition` + +Required: + +- `text` (String) The text to display in the widget. + +Optional: + +- `color` (String) The color of the text in the widget. +- `font_size` (String) The size of the text in the widget. +- `text_align` (String) The alignment of the text in the widget. Valid values are `center`, `left`, `right`. + + + +### Nested Schema for `widget.heatmap_definition` + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--custom_link)) +- `event` (Block List) The definition of the event to overlay on the graph. Multiple `event` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--event)) +- `legend_size` (String) The size of the legend displayed in the widget. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the request block). (see [below for nested schema](#nestedblock--widget--heatmap_definition--request)) +- `show_legend` (Boolean) Whether or not to show the legend on this widget. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). +- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--yaxis)) + + +### Nested Schema for `widget.heatmap_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.heatmap_definition.event` + +Required: + +- `q` (String) The event query to use in the widget. + +Optional: + +- `tags_execution` (String) The execution method for multi-value filters. + + + +### Nested Schema for `widget.heatmap_definition.request` + +Optional: + +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--apm_query)) +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--formula)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--security_query)) +- `style` (Block List, Max: 1) The style of the widget graph. One nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--style)) + + +### Nested Schema for `widget.heatmap_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.heatmap_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.heatmap_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.heatmap_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.heatmap_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.heatmap_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--formula--style)) + + +### Nested Schema for `widget.heatmap_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.heatmap_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.heatmap_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.heatmap_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.heatmap_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.heatmap_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.heatmap_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.heatmap_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.heatmap_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.heatmap_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--slo_query)) + + +### Nested Schema for `widget.heatmap_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.heatmap_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.heatmap_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.heatmap_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.heatmap_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.heatmap_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.heatmap_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.heatmap_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.heatmap_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.heatmap_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.heatmap_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.heatmap_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.heatmap_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.heatmap_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.heatmap_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.heatmap_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.heatmap_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.heatmap_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--heatmap_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.heatmap_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.heatmap_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.heatmap_definition.request.style` + +Optional: + +- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. + + + + +### Nested Schema for `widget.heatmap_definition.yaxis` + +Optional: + +- `include_zero` (Boolean) Always include zero or fit the axis to the data range. +- `label` (String) The label of the axis to display on the graph. +- `max` (String) Specify the maximum value to show on the Y-axis. +- `min` (String) Specify the minimum value to show on the Y-axis. +- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + + + + +### Nested Schema for `widget.hostmap_definition` + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--custom_link)) +- `group` (List of String) The list of tags to group nodes by. +- `no_group_hosts` (Boolean) A Boolean indicating whether to show ungrouped nodes. +- `no_metric_hosts` (Boolean) A Boolean indicating whether to show nodes with no metrics. +- `node_type` (String) The type of node used. Valid values are `host`, `container`. +- `request` (Block List, Max: 1) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request)) +- `scope` (List of String) The list of tags to filter nodes by. +- `style` (Block List, Max: 1) The style of the widget graph. One nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--style)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.hostmap_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.hostmap_definition.request` + +Optional: + +- `fill` (Block List) The query used to fill the map. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the request block). (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill)) +- `size` (Block List) The query used to size the map. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the request block). (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size)) + + +### Nested Schema for `widget.hostmap_definition.request.fill` + +Optional: + +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--apm_query)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--process_query)) +- `q` (String) The metric query to use for this widget. +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--security_query)) + + +### Nested Schema for `widget.hostmap_definition.request.fill.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.hostmap_definition.request.fill.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.hostmap_definition.request.fill.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.hostmap_definition.request.fill.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.hostmap_definition.request.fill.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.hostmap_definition.request.fill.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.hostmap_definition.request.fill.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.hostmap_definition.request.fill.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.hostmap_definition.request.fill.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.hostmap_definition.request.fill.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.hostmap_definition.request.fill.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.hostmap_definition.request.fill.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.hostmap_definition.request.fill.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.hostmap_definition.request.fill.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.hostmap_definition.request.fill.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.hostmap_definition.request.fill.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.hostmap_definition.request.fill.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.hostmap_definition.request.fill.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.hostmap_definition.request.fill.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--fill--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.hostmap_definition.request.fill.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.hostmap_definition.request.fill.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + +### Nested Schema for `widget.hostmap_definition.request.size` + +Optional: + +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--apm_query)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--process_query)) +- `q` (String) The metric query to use for this widget. +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--security_query)) + + +### Nested Schema for `widget.hostmap_definition.request.size.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.hostmap_definition.request.size.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.hostmap_definition.request.size.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.hostmap_definition.request.size.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.hostmap_definition.request.size.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.hostmap_definition.request.size.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.hostmap_definition.request.size.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.hostmap_definition.request.size.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.hostmap_definition.request.size.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.hostmap_definition.request.size.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.hostmap_definition.request.size.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.hostmap_definition.request.size.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.hostmap_definition.request.size.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.hostmap_definition.request.size.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.hostmap_definition.request.size.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.hostmap_definition.request.size.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.hostmap_definition.request.size.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.hostmap_definition.request.size.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.hostmap_definition.request.size.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--hostmap_definition--request--size--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.hostmap_definition.request.size.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.hostmap_definition.request.size.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + + +### Nested Schema for `widget.hostmap_definition.style` + +Optional: + +- `fill_max` (String) The max value to use to color the map. +- `fill_min` (String) The min value to use to color the map. +- `palette` (String) A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. +- `palette_flip` (Boolean) A Boolean indicating whether to flip the palette tones. + + + + +### Nested Schema for `widget.iframe_definition` + +Required: + +- `url` (String) The URL to use as a data source for the widget. + + + +### Nested Schema for `widget.image_definition` + +Required: + +- `url` (String) The URL to use as a data source for the widget. + +Optional: + +- `has_background` (Boolean) Whether to display a background or not. Defaults to `true`. +- `has_border` (Boolean) Whether to display a border or not. Defaults to `true`. +- `horizontal_align` (String) The horizontal alignment for the widget. Valid values are `center`, `left`, `right`. +- `margin` (String) The margins to use around the image. Note: `small` and `large` values are deprecated. Valid values are `sm`, `md`, `lg`, `small`, `large`. +- `sizing` (String) The preferred method to adapt the dimensions of the image. The values are based on the image `object-fit` CSS properties. Note: `zoom`, `fit` and `center` values are deprecated. Valid values are `fill`, `contain`, `cover`, `none`, `scale-down`, `zoom`, `fit`, `center`. +- `url_dark_theme` (String) The URL in dark mode to use as a data source for the widget. +- `vertical_align` (String) The vertical alignment for the widget. Valid values are `center`, `top`, `bottom`. + + + +### Nested Schema for `widget.list_stream_definition` + +Required: + +- `request` (Block List, Min: 1) Nested block describing the requests to use when displaying the widget. Multiple `request` blocks are allowed with the structure below. (see [below for nested schema](#nestedblock--widget--list_stream_definition--request)) + +Optional: + +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title. Default is 16. + + +### Nested Schema for `widget.list_stream_definition.request` + +Required: + +- `columns` (Block List, Min: 1) Widget columns. (see [below for nested schema](#nestedblock--widget--list_stream_definition--request--columns)) +- `query` (Block List, Min: 1, Max: 1) Updated list stream widget. (see [below for nested schema](#nestedblock--widget--list_stream_definition--request--query)) +- `response_format` (String) Widget response format. Valid values are `event_list`. + + +### Nested Schema for `widget.list_stream_definition.request.columns` + +Required: + +- `field` (String) Widget column field. +- `width` (String) Widget column width. Valid values are `auto`, `compact`, `full`. + + + +### Nested Schema for `widget.list_stream_definition.request.query` + +Required: + +- `data_source` (String) Source from which to query items to display in the stream. Valid values are `logs_stream`, `audit_stream`, `ci_pipeline_stream`, `ci_test_stream`, `rum_issue_stream`, `apm_issue_stream`, `trace_stream`, `logs_issue_stream`, `logs_pattern_stream`, `logs_transaction_stream`, `event_stream`. + +Optional: + +- `event_size` (String) Size of events displayed in widget. Required if `data_source` is `event_stream`. Valid values are `s`, `l`. +- `indexes` (List of String) List of indexes. +- `query_string` (String) Widget query. +- `sort` (Block List, Max: 1) The facet and order to sort the data, for example: `{"column": "time", "order": "desc"}`. (see [below for nested schema](#nestedblock--widget--list_stream_definition--request--query--sort)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.list_stream_definition.request.query.sort` + +Required: + +- `column` (String) The facet path for the column. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + + + + + + +### Nested Schema for `widget.log_stream_definition` + +Optional: + +- `columns` (List of String) Stringified list of columns to use, for example: `["column1","column2","column3"]`. +- `indexes` (List of String) An array of index names to query in the stream. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `message_display` (String) The number of log lines to display. Valid values are `inline`, `expanded-md`, `expanded-lg`. +- `query` (String) The query to use in the widget. +- `show_date_column` (Boolean) If the date column should be displayed. +- `show_message_column` (Boolean) If the message column should be displayed. +- `sort` (Block List, Max: 1) The facet and order to sort the data, for example: `{"column": "time", "order": "desc"}`. (see [below for nested schema](#nestedblock--widget--log_stream_definition--sort)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.log_stream_definition.sort` + +Required: + +- `column` (String) The facet path for the column. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.manage_status_definition` + +Required: + +- `query` (String) The query to use in the widget. + +Optional: + +- `color_preference` (String) Whether to colorize text or background. Valid values are `background`, `text`. +- `display_format` (String) The display setting to use. Valid values are `counts`, `countsAndList`, `list`. +- `hide_zero_counts` (Boolean) A Boolean indicating whether to hide empty categories. +- `show_last_triggered` (Boolean) A Boolean indicating whether to show when monitors/groups last triggered. +- `show_priority` (Boolean) Whether to show the priorities column. +- `sort` (String) The method to sort the monitors. Valid values are `name`, `group`, `status`, `tags`, `triggered`, `group,asc`, `group,desc`, `name,asc`, `name,desc`, `status,asc`, `status,desc`, `tags,asc`, `tags,desc`, `triggered,asc`, `triggered,desc`, `priority,asc`, `priority,desc`. +- `summary_type` (String) The summary type to use. Valid values are `monitors`, `groups`, `combined`. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + + +### Nested Schema for `widget.note_definition` + +Required: + +- `content` (String) The content of the note. + +Optional: + +- `background_color` (String) The background color of the note. +- `font_size` (String) The size of the text. +- `has_padding` (Boolean) Whether to add padding or not. Defaults to `true`. +- `show_tick` (Boolean) Whether to show a tick or not. +- `text_align` (String) The alignment of the widget's text. Valid values are `center`, `left`, `right`. +- `tick_edge` (String) When `tick = true`, a string indicating on which side of the widget the tick should be displayed. Valid values are `bottom`, `left`, `right`, `top`. +- `tick_pos` (String) When `tick = true`, a string with a percent sign indicating the position of the tick, for example: `tick_pos = "50%"` is centered alignment. +- `vertical_align` (String) The vertical alignment for the widget. Valid values are `center`, `top`, `bottom`. + + + +### Nested Schema for `widget.query_value_definition` + +Optional: + +- `autoscale` (Boolean) A Boolean indicating whether to automatically scale the tile. +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--custom_link)) +- `custom_unit` (String) The unit for the value displayed in the widget. +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `precision` (Number) The precision to use when displaying the tile. +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--query_value_definition--request)) +- `text_align` (String) The alignment of the widget's text. Valid values are `center`, `left`, `right`. +- `timeseries_background` (Block List, Max: 1) Set a timeseries on the widget background. (see [below for nested schema](#nestedblock--widget--query_value_definition--timeseries_background)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.query_value_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.query_value_definition.request` + +Optional: + +- `aggregator` (String) The aggregator to use for time aggregation. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--apm_query)) +- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--audit_query)) +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--conditional_formats)) +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--query_value_definition--request--formula)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--process_query)) +- `q` (String) The metric query to use for this widget. +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--security_query)) + + +### Nested Schema for `widget.query_value_definition.request.apm_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--apm_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.query_value_definition.request.apm_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.query_value_definition.request.apm_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--apm_query--group_by--sort_query)) + + +### Nested Schema for `widget.query_value_definition.request.apm_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.query_value_definition.request.apm_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.query_value_definition.request.audit_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--audit_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--audit_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--audit_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.query_value_definition.request.audit_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.query_value_definition.request.audit_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--audit_query--group_by--sort_query)) + + +### Nested Schema for `widget.query_value_definition.request.audit_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.query_value_definition.request.audit_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.query_value_definition.request.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.query_value_definition.request.formula` + +Required: + +- `formula_expression` (String) A string expression built from queries, formulas, and functions. + +Optional: + +- `alias` (String) An expression alias. +- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. +- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--formula--conditional_formats)) +- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--formula--limit)) +- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--formula--style)) + + +### Nested Schema for `widget.query_value_definition.request.formula.conditional_formats` + +Required: + +- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. +- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. +- `value` (Number) A value for the comparator. + +Optional: + +- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. +- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. +- `hide_value` (Boolean) Setting this to True hides values. +- `image_url` (String) Displays an image as the background. +- `metric` (String) The metric from the request to correlate with this conditional format. +- `timeframe` (String) Defines the displayed timeframe. + + + +### Nested Schema for `widget.query_value_definition.request.formula.limit` + +Optional: + +- `count` (Number) The number of results to return. +- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. + + + +### Nested Schema for `widget.query_value_definition.request.formula.style` + +Optional: + +- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. +- `palette_index` (Number) Index specifying which color to use within the palette. + + + + +### Nested Schema for `widget.query_value_definition.request.log_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--log_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.query_value_definition.request.log_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.query_value_definition.request.log_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--log_query--group_by--sort_query)) + + +### Nested Schema for `widget.query_value_definition.request.log_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.query_value_definition.request.log_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.query_value_definition.request.process_query` + +Required: + +- `metric` (String) Your chosen metric. + +Optional: + +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. + + + +### Nested Schema for `widget.query_value_definition.request.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--slo_query)) + + +### Nested Schema for `widget.query_value_definition.request.query.apm_dependency_stats_query` + +Required: + +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + +Optional: + +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + + + +### Nested Schema for `widget.query_value_definition.request.query.apm_resource_stats_query` + +Required: + +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +Optional: + +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. + + + +### Nested Schema for `widget.query_value_definition.request.query.event_query` + +Required: + +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.query_value_definition.request.query.event_query.compute` + +Required: + +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. + + + +### Nested Schema for `widget.query_value_definition.request.query.event_query.group_by` + +Required: + +- `facet` (String) The event facet. + +Optional: + +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.query_value_definition.request.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. + + + + +### Nested Schema for `widget.query_value_definition.request.query.event_query.search` + +Required: + +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.query_value_definition.request.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. + + + +### Nested Schema for `widget.query_value_definition.request.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. + +Optional: + +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. + + + +### Nested Schema for `widget.query_value_definition.request.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + + + + +### Nested Schema for `widget.query_value_definition.request.rum_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--rum_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.query_value_definition.request.rum_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.query_value_definition.request.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.query_value_definition.request.rum_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.query_value_definition.request.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + +### Nested Schema for `widget.query_value_definition.request.security_query` + +Required: + +- `index` (String) The name of the index to query. + +Optional: + +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--security_query--multi_compute)) +- `search_query` (String) The search query to use. + + +### Nested Schema for `widget.query_value_definition.request.security_query.compute_query` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.query_value_definition.request.security_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--security_query--group_by--sort_query)) + + +### Nested Schema for `widget.query_value_definition.request.security_query.group_by.sort_query` + +Required: + +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. + +Optional: + +- `facet` (String) The facet name. + + + + +### Nested Schema for `widget.query_value_definition.request.security_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. + +Optional: + +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + + + +### Nested Schema for `widget.query_value_definition.timeseries_background` + +Required: + +- `type` (String) Whether the Timeseries is made using an area or bars. Valid values are `bars`, `area`. + +Optional: + +- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--timeseries_background--yaxis)) + + +### Nested Schema for `widget.query_value_definition.timeseries_background.yaxis` + +Optional: + +- `include_zero` (Boolean) Always include zero or fit the axis to the data range. +- `label` (String) The label of the axis to display on the graph. +- `max` (String) Specify the maximum value to show on the Y-axis. +- `min` (String) Specify the minimum value to show on the Y-axis. +- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + + + + + +### Nested Schema for `widget.run_workflow_definition` + +Required: + +- `workflow_id` (String) Workflow ID + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--run_workflow_definition--custom_link)) +- `input` (Block List) Array of workflow inputs to map to dashboard template variables. (see [below for nested schema](#nestedblock--widget--run_workflow_definition--input)) +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.run_workflow_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.run_workflow_definition.input` + +Required: + +- `name` (String) Name of the workflow input. +- `value` (String) Dashboard template variable. Can be suffixed with `.value` or `.key`. + + + + +### Nested Schema for `widget.scatterplot_definition` + +Optional: + +- `color_by_groups` (List of String) List of groups used for colors. +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--custom_link)) +- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. +- `request` (Block List, Max: 1) A nested block describing the request to use when displaying the widget. Exactly one `request` block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). +- `xaxis` (Block List, Max: 1) A nested block describing the X-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--xaxis)) +- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--yaxis)) + + +### Nested Schema for `widget.scatterplot_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.scatterplot_definition.request` + +Optional: + +- `scatterplot_table` (Block List) Scatterplot request containing formulas and functions. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table)) +- `x` (Block List) The query used for the X-Axis. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query`, `apm_stats_query` or `process_query` is required within the block). (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x)) +- `y` (Block List) The query used for the Y-Axis. Exactly one nested block is allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query`, `apm_stats_query` or `process_query` is required within the block). (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y)) + + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table` + +Optional: + +- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--formula)) +- `query` (Block List) (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query)) + + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.formula` + +Required: + +- `dimension` (String) Dimension of the Scatterplot. Valid values are `x`, `y`, `radius`, `color`. +- `formula_expression` (String) A string expression built from queries, formulas, and functions. Optional: -- `event_size` (String) The size to use to display an event. Valid values are `s`, `l`. -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `tags_execution` (String) The execution method for multi-value filters, options: `and` or `or`. -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). +- `alias` (String) An expression alias. - -### Nested Schema for `widget.event_timeline_definition` + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query` + +Optional: + +- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--apm_dependency_stats_query)) +- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--apm_resource_stats_query)) +- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--event_query)) +- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--metric_query)) +- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--process_query)) +- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--slo_query)) + + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.apm_dependency_stats_query` Required: -- `query` (String) The query to use in the widget. +- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `operation_name` (String) Name of operation on service. +- `resource_name` (String) APM resource. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. Optional: -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `tags_execution` (String) The execution method for multi-value filters, options: `and` or `or`. -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). +- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - -### Nested Schema for `widget.free_text_definition` + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.apm_resource_stats_query` Required: -- `text` (String) The text to display in the widget. +- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. +- `env` (String) APM environment. +- `name` (String) The name of query for use in formulas. +- `service` (String) APM service. +- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. Optional: -- `color` (String) The color of the text in the widget. -- `font_size` (String) The size of the text in the widget. -- `text_align` (String) The alignment of the text in the widget. Valid values are `center`, `left`, `right`. +- `group_by` (List of String) Array of fields to group results by. +- `operation_name` (String) Name of operation on service. +- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. +- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. +- `resource_name` (String) APM resource. - -### Nested Schema for `widget.iframe_definition` + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.event_query` Required: -- `url` (String) The URL to use as a data source for the widget. +- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--event_query--compute)) +- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. +- `name` (String) The name of query for use in formulas. +Optional: - -### Nested Schema for `widget.image_definition` +- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--event_query--group_by)) +- `indexes` (List of String) An array of index names to query in the stream. +- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--event_query--search)) +- `storage` (String) Storage location (private beta). + + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.event_query.compute` Required: -- `url` (String) The URL to use as a data source for the widget. +- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. Optional: -- `has_background` (Boolean) Whether to display a background or not. Defaults to `true`. -- `has_border` (Boolean) Whether to display a border or not. Defaults to `true`. -- `horizontal_align` (String) The horizontal alignment for the widget. Valid values are `center`, `left`, `right`. -- `margin` (String) The margins to use around the image. Note: `small` and `large` values are deprecated. Valid values are `sm`, `md`, `lg`, `small`, `large`. -- `sizing` (String) The preferred method to adapt the dimensions of the image. The values are based on the image `object-fit` CSS properties. Note: `zoom`, `fit` and `center` values are deprecated. Valid values are `fill`, `contain`, `cover`, `none`, `scale-down`, `zoom`, `fit`, `center`. -- `url_dark_theme` (String) The URL in dark mode to use as a data source for the widget. -- `vertical_align` (String) The vertical alignment for the widget. Valid values are `center`, `top`, `bottom`. +- `interval` (Number) A time interval in milliseconds. +- `metric` (String) The measurable attribute to compute. - -### Nested Schema for `widget.manage_status_definition` + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.event_query.group_by` Required: -- `query` (String) The query to use in the widget. +- `facet` (String) The event facet. Optional: -- `color_preference` (String) Whether to colorize text or background. Valid values are `background`, `text`. -- `display_format` (String) The display setting to use. Valid values are `counts`, `countsAndList`, `list`. -- `hide_zero_counts` (Boolean) A Boolean indicating whether to hide empty categories. -- `show_last_triggered` (Boolean) A Boolean indicating whether to show when monitors/groups last triggered. -- `show_priority` (Boolean) Whether to show the priorities column. -- `sort` (String) The method to sort the monitors. Valid values are `name`, `group`, `status`, `tags`, `triggered`, `group,asc`, `group,desc`, `name,asc`, `name,desc`, `status,asc`, `status,desc`, `tags,asc`, `tags,desc`, `triggered,asc`, `triggered,desc`, `priority,asc`, `priority,desc`. -- `summary_type` (String) The summary type to use. Valid values are `monitors`, `groups`, `combined`. -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). +- `limit` (Number) The number of groups to return. +- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--scatterplot_table--query--event_query--group_by--sort)) + + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.event_query.group_by.sort` + +Required: + +- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + +Optional: + +- `metric` (String) The metric used for sorting group by results. +- `order` (String) Direction of sort. Valid values are `asc`, `desc`. - -### Nested Schema for `widget.note_definition` + + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.event_query.search` Required: -- `content` (String) The content of the note. +- `query` (String) The events search string. + + + + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.metric_query` + +Required: + +- `name` (String) The name of the query for use in formulas. +- `query` (String) The metrics query definition. Optional: -- `background_color` (String) The background color of the note. -- `font_size` (String) The size of the text. -- `has_padding` (Boolean) Whether to add padding or not. Defaults to `true`. -- `show_tick` (Boolean) Whether to show a tick or not. -- `text_align` (String) The alignment of the widget's text. Valid values are `center`, `left`, `right`. -- `tick_edge` (String) When `tick = true`, a string indicating on which side of the widget the tick should be displayed. Valid values are `bottom`, `left`, `right`, `top`. -- `tick_pos` (String) When `tick = true`, a string with a percent sign indicating the position of the tick, for example: `tick_pos = "50%"` is centered alignment. -- `vertical_align` (String) The vertical alignment for the widget. Valid values are `center`, `top`, `bottom`. +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. - -### Nested Schema for `widget.query_value_definition` + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.process_query` + +Required: + +- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. +- `metric` (String) The process metric name. +- `name` (String) The name of query for use in formulas. Optional: -- `autoscale` (Boolean) A Boolean indicating whether to automatically scale the tile. -- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--custom_link)) -- `custom_unit` (String) The unit for the value displayed in the widget. -- `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. -- `precision` (Number) The precision to use when displaying the tile. -- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple `request` blocks are allowed using the structure below (exactly one of `q`, `apm_query`, `log_query`, `rum_query`, `security_query` or `process_query` is required within the `request` block). (see [below for nested schema](#nestedblock--widget--query_value_definition--request)) -- `text_align` (String) The alignment of the widget's text. Valid values are `center`, `left`, `right`. -- `timeseries_background` (Block List, Max: 1) Set a timeseries on the widget background. (see [below for nested schema](#nestedblock--widget--query_value_definition--timeseries_background)) -- `title` (String) The title of the widget. -- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. -- `title_size` (String) The size of the widget's title (defaults to 16). +- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. +- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. +- `limit` (Number) The number of hits to return. +- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `tag_filters` (List of String) An array of tags to filter by. +- `text_filter` (String) The text to use as a filter. - -### Nested Schema for `widget.query_value_definition.custom_link` + + +### Nested Schema for `widget.scatterplot_definition.request.scatterplot_table.query.slo_query` + +Required: + +- `data_source` (String) The data source for SLO queries. Valid values are `slo`. +- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. +- `slo_id` (String) ID of an SLO to query. Optional: -- `is_hidden` (Boolean) The flag for toggling context menu link visibility. -- `label` (String) The label for the custom link URL. -- `link` (String) The URL of the custom link. -- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. +- `name` (String) The name of query for use in formulas. +- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. + - -### Nested Schema for `widget.query_value_definition.request` + + +### Nested Schema for `widget.scatterplot_definition.request.x` Optional: -- `aggregator` (String) The aggregator to use for time aggregation. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. -- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--apm_query)) -- `audit_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--audit_query)) -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--conditional_formats)) -- `formula` (Block List) (see [below for nested schema](#nestedblock--widget--query_value_definition--request--formula)) -- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--log_query)) -- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--process_query)) +- `aggregator` (String) Aggregator used for the request. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--apm_query)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--process_query)) - `q` (String) The metric query to use for this widget. -- `query` (Block List) (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query)) -- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--rum_query)) -- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--security_query)) +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--security_query)) - -### Nested Schema for `widget.query_value_definition.request.apm_query` + +### Nested Schema for `widget.scatterplot_definition.request.x.apm_query` Required: @@ -821,13 +3307,13 @@ Required: Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--apm_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--apm_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--apm_query--multi_compute)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--apm_query--multi_compute)) - `search_query` (String) The search query to use. - -### Nested Schema for `widget.query_value_definition.request.apm_query.compute_query` + +### Nested Schema for `widget.scatterplot_definition.request.x.apm_query.compute_query` Required: @@ -839,17 +3325,17 @@ Optional: - `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.query_value_definition.request.apm_query.group_by` + +### Nested Schema for `widget.scatterplot_definition.request.x.apm_query.group_by` Optional: - `facet` (String) The facet name. - `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--apm_query--group_by--sort_query)) +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--apm_query--group_by--sort_query)) - -### Nested Schema for `widget.query_value_definition.request.apm_query.group_by.sort_query` + +### Nested Schema for `widget.scatterplot_definition.request.x.apm_query.group_by.sort_query` Required: @@ -862,8 +3348,8 @@ Optional: - -### Nested Schema for `widget.query_value_definition.request.apm_query.multi_compute` + +### Nested Schema for `widget.scatterplot_definition.request.x.apm_query.multi_compute` Required: @@ -876,8 +3362,8 @@ Optional: - -### Nested Schema for `widget.query_value_definition.request.audit_query` + +### Nested Schema for `widget.scatterplot_definition.request.x.log_query` Required: @@ -885,13 +3371,13 @@ Required: Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--audit_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--audit_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--audit_query--multi_compute)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--log_query--multi_compute)) - `search_query` (String) The search query to use. - -### Nested Schema for `widget.query_value_definition.request.audit_query.compute_query` + +### Nested Schema for `widget.scatterplot_definition.request.x.log_query.compute_query` Required: @@ -903,17 +3389,17 @@ Optional: - `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.query_value_definition.request.audit_query.group_by` + +### Nested Schema for `widget.scatterplot_definition.request.x.log_query.group_by` Optional: - `facet` (String) The facet name. - `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--audit_query--group_by--sort_query)) +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--log_query--group_by--sort_query)) - -### Nested Schema for `widget.query_value_definition.request.audit_query.group_by.sort_query` + +### Nested Schema for `widget.scatterplot_definition.request.x.log_query.group_by.sort_query` Required: @@ -926,8 +3412,8 @@ Optional: - -### Nested Schema for `widget.query_value_definition.request.audit_query.multi_compute` + +### Nested Schema for `widget.scatterplot_definition.request.x.log_query.multi_compute` Required: @@ -940,80 +3426,86 @@ Optional: - -### Nested Schema for `widget.query_value_definition.request.conditional_formats` + +### Nested Schema for `widget.scatterplot_definition.request.x.process_query` Required: -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. +- `metric` (String) Your chosen metric. Optional: -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. - -### Nested Schema for `widget.query_value_definition.request.formula` + +### Nested Schema for `widget.scatterplot_definition.request.x.rum_query` Required: -- `formula_expression` (String) A string expression built from queries, formulas, and functions. +- `index` (String) The name of the index to query. Optional: -- `alias` (String) An expression alias. -- `cell_display_mode` (String) A list of display modes for each table cell. Valid values are `number`, `bar`. -- `conditional_formats` (Block List) Conditional formats allow you to set the color of your widget content or background depending on the rule applied to your data. Multiple `conditional_formats` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--formula--conditional_formats)) -- `limit` (Block List, Max: 1) The options for limiting results returned. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--formula--limit)) -- `style` (Block List, Max: 1) Styling options for widget formulas. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--formula--style)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--rum_query--multi_compute)) +- `search_query` (String) The search query to use. - -### Nested Schema for `widget.query_value_definition.request.formula.conditional_formats` + +### Nested Schema for `widget.scatterplot_definition.request.x.rum_query.compute_query` Required: -- `comparator` (String) The comparator to use. Valid values are `=`, `>`, `>=`, `<`, `<=`. -- `palette` (String) The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. -- `value` (Number) A value for the comparator. +- `aggregation` (String) The aggregation method. Optional: -- `custom_bg_color` (String) The color palette to apply to the background, same values available as palette. -- `custom_fg_color` (String) The color palette to apply to the foreground, same values available as palette. -- `hide_value` (Boolean) Setting this to True hides values. -- `image_url` (String) Displays an image as the background. -- `metric` (String) The metric from the request to correlate with this conditional format. -- `timeframe` (String) Defines the displayed timeframe. +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. + + + +### Nested Schema for `widget.scatterplot_definition.request.x.rum_query.group_by` + +Optional: + +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--rum_query--group_by--sort_query)) + + +### Nested Schema for `widget.scatterplot_definition.request.x.rum_query.group_by.sort_query` +Required: - -### Nested Schema for `widget.query_value_definition.request.formula.limit` +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. Optional: -- `count` (Number) The number of results to return. -- `order` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. +- `facet` (String) The facet name. - -### Nested Schema for `widget.query_value_definition.request.formula.style` + + +### Nested Schema for `widget.scatterplot_definition.request.x.rum_query.multi_compute` + +Required: + +- `aggregation` (String) The aggregation method. Optional: -- `palette` (String) The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors. -- `palette_index` (Number) Index specifying which color to use within the palette. +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.query_value_definition.request.log_query` + +### Nested Schema for `widget.scatterplot_definition.request.x.security_query` Required: @@ -1021,13 +3513,13 @@ Required: Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--log_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--log_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--log_query--multi_compute)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--security_query--multi_compute)) - `search_query` (String) The search query to use. - -### Nested Schema for `widget.query_value_definition.request.log_query.compute_query` + +### Nested Schema for `widget.scatterplot_definition.request.x.security_query.compute_query` Required: @@ -1039,17 +3531,17 @@ Optional: - `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.query_value_definition.request.log_query.group_by` + +### Nested Schema for `widget.scatterplot_definition.request.x.security_query.group_by` Optional: - `facet` (String) The facet name. - `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--log_query--group_by--sort_query)) +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--x--security_query--group_by--sort_query)) - -### Nested Schema for `widget.query_value_definition.request.log_query.group_by.sort_query` + +### Nested Schema for `widget.scatterplot_definition.request.x.security_query.group_by.sort_query` Required: @@ -1062,8 +3554,8 @@ Optional: - -### Nested Schema for `widget.query_value_definition.request.log_query.multi_compute` + +### Nested Schema for `widget.scatterplot_definition.request.x.security_query.multi_compute` Required: @@ -1076,189 +3568,164 @@ Optional: - -### Nested Schema for `widget.query_value_definition.request.process_query` - -Required: -- `metric` (String) Your chosen metric. + +### Nested Schema for `widget.scatterplot_definition.request.y` Optional: -- `filter_by` (List of String) A list of processes. -- `limit` (Number) The max number of items in the filter list. -- `search_by` (String) Your chosen search term. +- `aggregator` (String) Aggregator used for the request. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. +- `apm_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--apm_query)) +- `log_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--log_query)) +- `process_query` (Block List, Max: 1) The process query to use in the widget. The structure of this block is described below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--process_query)) +- `q` (String) The metric query to use for this widget. +- `rum_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--rum_query)) +- `security_query` (Block List, Max: 1) The query to use for this widget. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--security_query)) + +### Nested Schema for `widget.scatterplot_definition.request.y.apm_query` - -### Nested Schema for `widget.query_value_definition.request.query` +Required: + +- `index` (String) The name of the index to query. Optional: -- `apm_dependency_stats_query` (Block List, Max: 1) The APM Dependency Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--apm_dependency_stats_query)) -- `apm_resource_stats_query` (Block List, Max: 1) The APM Resource Stats query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--apm_resource_stats_query)) -- `event_query` (Block List, Max: 1) A timeseries formula and functions events query. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--event_query)) -- `metric_query` (Block List, Max: 1) A timeseries formula and functions metrics query. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--metric_query)) -- `process_query` (Block List, Max: 1) The process query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--process_query)) -- `slo_query` (Block List, Max: 1) The SLO query using formulas and functions. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--slo_query)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--apm_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--apm_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--apm_query--multi_compute)) +- `search_query` (String) The search query to use. - -### Nested Schema for `widget.query_value_definition.request.query.apm_dependency_stats_query` + +### Nested Schema for `widget.scatterplot_definition.request.y.apm_query.compute_query` Required: -- `data_source` (String) The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `operation_name` (String) Name of operation on service. -- `resource_name` (String) APM resource. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. +- `aggregation` (String) The aggregation method. Optional: -- `is_upstream` (Boolean) Determines whether stats for upstream or downstream dependencies should be queried. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - - - -### Nested Schema for `widget.query_value_definition.request.query.apm_resource_stats_query` +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. -Required: -- `data_source` (String) The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. -- `env` (String) APM environment. -- `name` (String) The name of query for use in formulas. -- `service` (String) APM service. -- `stat` (String) APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + +### Nested Schema for `widget.scatterplot_definition.request.y.apm_query.group_by` Optional: -- `group_by` (List of String) Array of fields to group results by. -- `operation_name` (String) Name of operation on service. -- `primary_tag_name` (String) The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. -- `primary_tag_value` (String) Filter APM data by the second primary tag. `primary_tag_name` must also be specified. -- `resource_name` (String) APM resource. - +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--apm_query--group_by--sort_query)) - -### Nested Schema for `widget.query_value_definition.request.query.event_query` + +### Nested Schema for `widget.scatterplot_definition.request.y.apm_query.group_by.sort_query` Required: -- `compute` (Block List, Min: 1) The compute options. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--event_query--compute)) -- `data_source` (String) The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`, `ci_pipelines`. -- `name` (String) The name of query for use in formulas. +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. Optional: -- `group_by` (Block List) Group by options. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--event_query--group_by)) -- `indexes` (List of String) An array of index names to query in the stream. -- `search` (Block List, Max: 1) The search options. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--event_query--search)) -- `storage` (String) Storage location (private beta). +- `facet` (String) The facet name. + - -### Nested Schema for `widget.query_value_definition.request.query.event_query.compute` + + +### Nested Schema for `widget.scatterplot_definition.request.y.apm_query.multi_compute` Required: -- `aggregation` (String) The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. +- `aggregation` (String) The aggregation method. Optional: -- `interval` (Number) A time interval in milliseconds. -- `metric` (String) The measurable attribute to compute. +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.query_value_definition.request.query.event_query.group_by` + + +### Nested Schema for `widget.scatterplot_definition.request.y.log_query` Required: -- `facet` (String) The event facet. +- `index` (String) The name of the index to query. Optional: -- `limit` (Number) The number of groups to return. -- `sort` (Block List, Max: 1) The options for sorting group by results. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--query--event_query--group_by--sort)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--log_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--log_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--log_query--multi_compute)) +- `search_query` (String) The search query to use. - -### Nested Schema for `widget.query_value_definition.request.query.event_query.group_by.sort` + +### Nested Schema for `widget.scatterplot_definition.request.y.log_query.compute_query` Required: -- `aggregation` (String) The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. +- `aggregation` (String) The aggregation method. Optional: -- `metric` (String) The metric used for sorting group by results. -- `order` (String) Direction of sort. Valid values are `asc`, `desc`. - - - - -### Nested Schema for `widget.query_value_definition.request.query.event_query.search` +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. -Required: -- `query` (String) The events search string. + +### Nested Schema for `widget.scatterplot_definition.request.y.log_query.group_by` +Optional: +- `facet` (String) The facet name. +- `limit` (Number) The maximum number of items in the group. +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--log_query--group_by--sort_query)) - -### Nested Schema for `widget.query_value_definition.request.query.metric_query` + +### Nested Schema for `widget.scatterplot_definition.request.y.log_query.group_by.sort_query` Required: -- `name` (String) The name of the query for use in formulas. -- `query` (String) The metrics query definition. +- `aggregation` (String) The aggregation method. +- `order` (String) Widget sorting methods. Valid values are `asc`, `desc`. Optional: -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `data_source` (String) The data source for metrics queries. Defaults to `"metrics"`. +- `facet` (String) The facet name. - -### Nested Schema for `widget.query_value_definition.request.query.process_query` + + +### Nested Schema for `widget.scatterplot_definition.request.y.log_query.multi_compute` Required: -- `data_source` (String) The data source for process queries. Valid values are `process`, `container`. -- `metric` (String) The process metric name. -- `name` (String) The name of query for use in formulas. +- `aggregation` (String) The aggregation method. Optional: -- `aggregator` (String) The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. -- `is_normalized_cpu` (Boolean) Whether to normalize the CPU percentages. -- `limit` (Number) The number of hits to return. -- `sort` (String) The direction of the sort. Valid values are `asc`, `desc`. Defaults to `"desc"`. -- `tag_filters` (List of String) An array of tags to filter by. -- `text_filter` (String) The text to use as a filter. +- `facet` (String) The facet name. +- `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.query_value_definition.request.query.slo_query` + + +### Nested Schema for `widget.scatterplot_definition.request.y.process_query` Required: -- `data_source` (String) The data source for SLO queries. Valid values are `slo`. -- `measure` (String) SLO measures queries. Valid values are `good_events`, `bad_events`, `slo_status`, `error_budget_remaining`, `burn_rate`, `error_budget_burndown`. -- `slo_id` (String) ID of an SLO to query. +- `metric` (String) Your chosen metric. Optional: -- `additional_query_filters` (String) Additional filters applied to the SLO query. -- `group_mode` (String) Group mode to query measures. Valid values are `overall`, `components`. Defaults to `"overall"`. -- `name` (String) The name of query for use in formulas. -- `slo_query_type` (String) type of the SLO to query. Valid values are `metric`. Defaults to `"metric"`. - +- `filter_by` (List of String) A list of processes. +- `limit` (Number) The max number of items in the filter list. +- `search_by` (String) Your chosen search term. - -### Nested Schema for `widget.query_value_definition.request.rum_query` + +### Nested Schema for `widget.scatterplot_definition.request.y.rum_query` Required: @@ -1266,13 +3733,13 @@ Required: Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--rum_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--rum_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--rum_query--multi_compute)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--rum_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--rum_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--rum_query--multi_compute)) - `search_query` (String) The search query to use. - -### Nested Schema for `widget.query_value_definition.request.rum_query.compute_query` + +### Nested Schema for `widget.scatterplot_definition.request.y.rum_query.compute_query` Required: @@ -1284,17 +3751,17 @@ Optional: - `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.query_value_definition.request.rum_query.group_by` + +### Nested Schema for `widget.scatterplot_definition.request.y.rum_query.group_by` Optional: - `facet` (String) The facet name. - `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--rum_query--group_by--sort_query)) +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--rum_query--group_by--sort_query)) - -### Nested Schema for `widget.query_value_definition.request.rum_query.group_by.sort_query` + +### Nested Schema for `widget.scatterplot_definition.request.y.rum_query.group_by.sort_query` Required: @@ -1307,8 +3774,8 @@ Optional: - -### Nested Schema for `widget.query_value_definition.request.rum_query.multi_compute` + +### Nested Schema for `widget.scatterplot_definition.request.y.rum_query.multi_compute` Required: @@ -1321,8 +3788,8 @@ Optional: - -### Nested Schema for `widget.query_value_definition.request.security_query` + +### Nested Schema for `widget.scatterplot_definition.request.y.security_query` Required: @@ -1330,13 +3797,13 @@ Required: Optional: -- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--security_query--compute_query)) -- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--security_query--group_by)) -- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--security_query--multi_compute)) +- `compute_query` (Block List, Max: 1) `compute_query` or `multi_compute` is required. The map keys are listed below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--security_query--compute_query)) +- `group_by` (Block List) Multiple `group_by` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--security_query--group_by)) +- `multi_compute` (Block List) `compute_query` or `multi_compute` is required. Multiple `multi_compute` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--security_query--multi_compute)) - `search_query` (String) The search query to use. - -### Nested Schema for `widget.query_value_definition.request.security_query.compute_query` + +### Nested Schema for `widget.scatterplot_definition.request.y.security_query.compute_query` Required: @@ -1348,17 +3815,17 @@ Optional: - `interval` (Number) Define the time interval in seconds. - -### Nested Schema for `widget.query_value_definition.request.security_query.group_by` + +### Nested Schema for `widget.scatterplot_definition.request.y.security_query.group_by` Optional: - `facet` (String) The facet name. - `limit` (Number) The maximum number of items in the group. -- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--query_value_definition--request--security_query--group_by--sort_query)) +- `sort_query` (Block List, Max: 1) A list of exactly one element describing the sort query to use. (see [below for nested schema](#nestedblock--widget--scatterplot_definition--request--y--security_query--group_by--sort_query)) - -### Nested Schema for `widget.query_value_definition.request.security_query.group_by.sort_query` + +### Nested Schema for `widget.scatterplot_definition.request.y.security_query.group_by.sort_query` Required: @@ -1371,8 +3838,8 @@ Optional: - -### Nested Schema for `widget.query_value_definition.request.security_query.multi_compute` + +### Nested Schema for `widget.scatterplot_definition.request.y.security_query.multi_compute` Required: @@ -1386,19 +3853,21 @@ Optional: - -### Nested Schema for `widget.query_value_definition.timeseries_background` - -Required: -- `type` (String) Whether the Timeseries is made using an area or bars. Valid values are `bars`, `area`. + +### Nested Schema for `widget.scatterplot_definition.xaxis` Optional: -- `yaxis` (Block List, Max: 1) A nested block describing the Y-Axis Controls. Exactly one nested block is allowed using the structure below. (see [below for nested schema](#nestedblock--widget--query_value_definition--timeseries_background--yaxis)) +- `include_zero` (Boolean) Always include zero or fit the axis to the data range. +- `label` (String) The label of the axis to display on the graph. +- `max` (String) Specify the maximum value to show on the Y-axis. +- `min` (String) Specify the minimum value to show on the Y-axis. +- `scale` (String) Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. - -### Nested Schema for `widget.query_value_definition.timeseries_background.yaxis` + + +### Nested Schema for `widget.scatterplot_definition.yaxis` Optional: @@ -1410,6 +3879,25 @@ Optional: + +### Nested Schema for `widget.service_level_objective_definition` + +Required: + +- `slo_id` (String) The ID of the service level objective used by the widget. +- `time_windows` (List of String) A list of time windows to display in the widget. Valid values are `7d`, `30d`, `90d`, `week_to_date`, `previous_week`, `month_to_date`, `previous_month`, `global_time`. +- `view_mode` (String) The view mode for the widget. Valid values are `overall`, `component`, `both`. +- `view_type` (String) The type of view to use when displaying the widget. Only `detail` is supported. + +Optional: + +- `additional_query_filters` (String) Additional filters applied to the SLO query. +- `global_time_target` (String) The global time target of the widget. +- `show_error_budget` (Boolean) Whether to show the error budget or not. +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + ### Nested Schema for `widget.servicemap_definition` @@ -2061,6 +4549,48 @@ Optional: + +### Nested Schema for `widget.topology_map_definition` + +Optional: + +- `custom_link` (Block List) A nested block describing a custom link. Multiple `custom_link` blocks are allowed using the structure below. (see [below for nested schema](#nestedblock--widget--topology_map_definition--custom_link)) +- `request` (Block List) A nested block describing the request to use when displaying the widget. Multiple request blocks are allowed using the structure below (`query` and `request_type` are required within the request). (see [below for nested schema](#nestedblock--widget--topology_map_definition--request)) +- `title` (String) The title of the widget. +- `title_align` (String) The alignment of the widget's title. Valid values are `center`, `left`, `right`. +- `title_size` (String) The size of the widget's title (defaults to 16). + + +### Nested Schema for `widget.topology_map_definition.custom_link` + +Optional: + +- `is_hidden` (Boolean) The flag for toggling context menu link visibility. +- `label` (String) The label for the custom link URL. +- `link` (String) The URL of the custom link. +- `override_label` (String) The label ID that refers to a context menu link item. When `override_label` is provided, the client request omits the label field. + + + +### Nested Schema for `widget.topology_map_definition.request` + +Required: + +- `query` (Block List, Min: 1) The query for a Topology request. (see [below for nested schema](#nestedblock--widget--topology_map_definition--request--query)) +- `request_type` (String) The request type for the Topology request ('topology'). Valid values are `topology`. + + +### Nested Schema for `widget.topology_map_definition.request.query` + +Required: + +- `data_source` (String) The data source for the Topology request ('service_map' or 'data_streams'). Valid values are `data_streams`, `service_map`. +- `filters` (List of String) Your environment and primary tag (or `*` if enabled for your account). +- `service` (String) The ID of the service to map. + + + + ### Nested Schema for `widget.trace_service_definition` From b74a15366529fb21bac06f48138d0e1edbec23a4 Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Mon, 6 Nov 2023 11:34:05 -0500 Subject: [PATCH 46/48] add request check for scatterplot/hostmap widgets --- datadog/resource_datadog_powerpack.go | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index 822612f319..c82321fec0 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -639,6 +639,7 @@ func normalizeWidgetDefRequests(widgetDefRequests []map[string]interface{}) []ma func normalizeDashboardWidgetDef(widgetDef map[string]interface{}) (map[string]interface{}, diag.Diagnostics) { var diags diag.Diagnostics + // SLO widgets are spelled out in dashboard widgets, but API expects "slo" as the widget type if widgetDef["type"] == "service_level_objective" { widgetDef["type"] = "slo" } @@ -656,6 +657,13 @@ func normalizeDashboardWidgetDef(widgetDef map[string]interface{}) (map[string]i if widgetDef["type"] == "scatterplot" || widgetDef["type"] == "hostmap" { // Scatterplot and hostmap widgets expect a single requests object instead of a list widgetDefRequest := widgetDef["request"].([]map[string]interface{})[0] + if len(widgetDefRequest) == 0 { + diags = append(diags, diag.Diagnostic{ + Severity: diag.Error, + Summary: fmt.Sprintf("request should be defined for widget: %s", widgetDef["type"]), + }) + return nil, diags + } for _, v := range []string{"fill", "size", "x", "y"} { // Properties listed above are always a single value, not a list if widgetDefRequest[v] != nil { @@ -704,7 +712,6 @@ func normalizeTerraformWidgetDef(widgetDef map[string]interface{}) map[string]in // Here we set the "request" field and remove "requests" if widgetDef["requests"] != nil { if widgetDef["type"] == "scatterplot" || widgetDef["type"] == "hostmap" { - // Because of course JUST one widget type expects requests to be a single value instead of a list widgetDefRequest := widgetDef["requests"].(map[string]interface{}) for _, v := range []string{"fill", "size", "x", "y"} { // Properties listed above need to be converted from single values in the API to plural values for TF From 7617247d42d42bda6d75b19fc525d2f715bac186 Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Mon, 6 Nov 2023 14:26:25 -0500 Subject: [PATCH 47/48] fix queries for topology map --- datadog/resource_datadog_powerpack.go | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index c82321fec0..ee785bd706 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -616,10 +616,10 @@ func buildDatadogPowerpack(ctx context.Context, d *schema.ResourceData) (*datado } -func normalizeWidgetDefRequests(widgetDefRequests []map[string]interface{}) []map[string]interface{} { +func normalizeWidgetDefRequests(widgetDefRequests []map[string]interface{}, widgetType string) []map[string]interface{} { normalizedWidgetDefRequests := widgetDefRequests for i, widgetDefRequest := range normalizedWidgetDefRequests { - for _, v := range []string{"style", "apm_stats_query", "x", "y", "query"} { + for _, v := range []string{"style", "apm_stats_query", "x", "y"} { // Properties listed above are always a single value, not a list if widgetDefRequest[v] != nil { widgetDefRequest[v] = widgetDefRequest[v].([]map[string]interface{})[0] @@ -632,6 +632,9 @@ func normalizeWidgetDefRequests(widgetDefRequests []map[string]interface{}) []ma delete(widgetDefRequest, v) } } + if widgetType != "topology_map" && widgetDefRequest["query"] != nil { + widgetDefRequest["query"] = widgetDefRequest["query"].([]map[string]interface{})[0] + } normalizedWidgetDefRequests[i] = widgetDefRequest } return normalizedWidgetDefRequests @@ -682,7 +685,7 @@ func normalizeDashboardWidgetDef(widgetDef map[string]interface{}) (map[string]i } // Distribution/change/heatmap widgets have a "requests" field, while API Spec has a "request" field // Here we set the "requests" field and remove "request" - widgetDef["requests"] = normalizeWidgetDefRequests(castWidgetDefReq) + widgetDef["requests"] = normalizeWidgetDefRequests(castWidgetDefReq, widgetDef["type"].(string)) } delete(widgetDef, "request") } @@ -724,7 +727,7 @@ func normalizeTerraformWidgetDef(widgetDef map[string]interface{}) map[string]in widgetDefRequests := widgetDef["requests"].([]interface{}) for i, widgetDefRequest := range widgetDefRequests { widgetDefRequestNormalized := widgetDefRequest.(map[string]interface{}) - for _, v := range []string{"style", "query", "apm_stats_query"} { + for _, v := range []string{"style", "apm_stats_query"} { // Properties listed above need to be converted from single values in the API to plural values for TF if widgetDefRequestNormalized[v] != nil { widgetDefRequestNormalized[v] = []interface{}{widgetDefRequestNormalized[v].(interface{})} @@ -734,6 +737,9 @@ func normalizeTerraformWidgetDef(widgetDef map[string]interface{}) map[string]in // Dashboard widget can't typecast the float64 limit value so we need to convert it first widgetDefRequestNormalized["limit"] = int(widgetDefRequestNormalized["limit"].(float64)) } + if widgetDef["type"] != "topology_map" && widgetDefRequestNormalized["query"] != nil { + widgetDefRequestNormalized["query"] = []interface{}{widgetDefRequestNormalized["query"].(interface{})} + } widgetDefRequests[i] = widgetDefRequestNormalized } widgetDef["request"] = widgetDefRequests From f529fff114d0ab6464610eb56d9c028759ee2b70 Mon Sep 17 00:00:00 2001 From: Dasha Shifrina Date: Tue, 14 Nov 2023 11:26:14 -0500 Subject: [PATCH 48/48] update docs --- datadog/resource_datadog_powerpack.go | 6 +- ...TestAccDatadogPowerpackDistribution.freeze | 2 +- .../TestAccDatadogPowerpackDistribution.yaml | 22 ++-- .../TestAccDatadogPowerpackHeatMap.freeze | 2 +- .../TestAccDatadogPowerpackHeatMap.yaml | 22 ++-- .../TestAccDatadogPowerpackHostMap.freeze | 2 +- .../TestAccDatadogPowerpackHostMap.yaml | 22 ++-- .../TestAccDatadogPowerpackListStream.freeze | 2 +- .../TestAccDatadogPowerpackListStream.yaml | 22 ++-- .../TestAccDatadogPowerpackLogStream.freeze | 2 +- .../TestAccDatadogPowerpackLogStream.yaml | 22 ++-- ...TestAccDatadogPowerpackRun_Workflow.freeze | 2 +- .../TestAccDatadogPowerpackRun_Workflow.yaml | 106 ++++++++++++++++++ .../TestAccDatadogPowerpackScatterplot.freeze | 2 +- .../TestAccDatadogPowerpackScatterplot.yaml | 22 ++-- .../TestAccDatadogPowerpackSlo.freeze | 2 +- .../cassettes/TestAccDatadogPowerpackSlo.yaml | 106 ++++++++++++++++++ .../TestAccDatadogPowerpackTopologyMap.freeze | 2 +- .../TestAccDatadogPowerpackTopologyMap.yaml | 22 ++-- datadog/tests/provider_test.go | 2 - docs/resources/powerpack.md | 16 +++ 21 files changed, 316 insertions(+), 92 deletions(-) create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackRun_Workflow.yaml create mode 100644 datadog/tests/cassettes/TestAccDatadogPowerpackSlo.yaml diff --git a/datadog/resource_datadog_powerpack.go b/datadog/resource_datadog_powerpack.go index 2344d6f51c..c0991e2877 100644 --- a/datadog/resource_datadog_powerpack.go +++ b/datadog/resource_datadog_powerpack.go @@ -718,7 +718,7 @@ func normalizeWidgetDefRequests(widgetDefRequests []map[string]interface{}, widg return normalizedWidgetDefRequests } -func normalizeDashboardWidgetDef(widgetDef map[string]interface{}) (map[string]interface{}, diag.Diagnostics) { +func normalizeDashboardWidgetDef(widgetDef map[string]interface{}, columnWidth int64) (map[string]interface{}, diag.Diagnostics) { var diags diag.Diagnostics // SLO widgets are spelled out in dashboard widgets, but API expects "slo" as the widget type if widgetDef["type"] == "service_level_objective" { @@ -850,7 +850,7 @@ func normalizeTerraformWidgetDef(widgetDef map[string]interface{}) map[string]in return widgetDef } -func dashboardWidgetsToPpkWidgets(terraformWidgets *[]map[string]interface{}) ([]datadogV2.PowerpackInnerWidgets, diag.Diagnostics) { +func dashboardWidgetsToPpkWidgets(terraformWidgets *[]map[string]interface{}, columnWidth int64) ([]datadogV2.PowerpackInnerWidgets, diag.Diagnostics) { var diags diag.Diagnostics widgets := make([]datadogV2.PowerpackInnerWidgets, len(*terraformWidgets)) @@ -943,8 +943,6 @@ func ppkWidgetsToDashboardWidgets(ppkWidgets []datadogV2.PowerpackInnerWidgets) definition = datadogV1.IFrameWidgetDefinitionAsWidgetDefinition(buildDatadogIframeDefinition(widgetDefinition)) case "image": definition = datadogV1.ImageWidgetDefinitionAsWidgetDefinition(buildDatadogImageDefinition(widgetDefinition)) - case "manage_status": - definition = datadogV1.MonitorSummaryWidgetDefinitionAsWidgetDefinition(buildDatadogManageStatusDefinition(widgetDefinition)) case "list_stream": definition = datadogV1.ListStreamWidgetDefinitionAsWidgetDefinition(buildDatadogListStreamDefinition(widgetDefinition)) case "log_stream": diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackDistribution.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackDistribution.freeze index 0171aa99c4..9e9200e41b 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackDistribution.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackDistribution.freeze @@ -1 +1 @@ -2023-10-27T16:10:43.243857-04:00 \ No newline at end of file +2023-11-14T12:01:15.615017-05:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackDistribution.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackDistribution.yaml index 6824774fb1..0d2f4585b5 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackDistribution.yaml +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackDistribution.yaml @@ -3,7 +3,7 @@ version: 1 interactions: - request: body: | - {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackDistribution-local-1698356868","type":"group","widgets":[{"definition":{"legend_size":"2","requests":[{"q":"avg:system.cpu.user{account:prod} by {service,account}","style":{"palette":"purple"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by service,account","title_align":"left","title_size":"16","type":"distribution"}},{"definition":{"legend_size":"2","requests":[{"apm_stats_query":{"env":"env","name":"name","primary_tag":"tag:*","row_type":"resource","service":"service"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by service,account","title_align":"left","title_size":"16","type":"distribution"}}]}},"name":"tf-TestAccDatadogPowerpackDistribution-local-1698356868","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackDistribution-local-1699981275","type":"group","widgets":[{"definition":{"legend_size":"2","requests":[{"q":"avg:system.cpu.user{account:prod} by {service,account}","style":{"palette":"purple"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by service,account","title_align":"left","title_size":"16","type":"distribution"}},{"definition":{"legend_size":"2","requests":[{"apm_stats_query":{"env":"env","name":"name","primary_tag":"tag:*","row_type":"resource","service":"service"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by service,account","title_align":"left","title_size":"16","type":"distribution"}}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"name":"tf-TestAccDatadogPowerpackDistribution-local-1699981275","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} form: {} headers: Accept: @@ -14,7 +14,7 @@ interactions: method: POST response: body: | - {"data":{"type":"powerpack","id":"4fcf19a6-7449-11ee-b2cd-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackDistribution-local-1698356868","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackDistribution-local-1698356868","type":"group","widgets":[{"definition":{"legend_size":"2","requests":[{"q":"avg:system.cpu.user{account:prod} by {service,account}","style":{"palette":"purple"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by service,account","title_align":"left","title_size":"16","type":"distribution"},"id":8705220437504606},{"definition":{"legend_size":"2","requests":[{"apm_stats_query":{"env":"env","name":"name","primary_tag":"tag:*","row_type":"resource","service":"service"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by service,account","title_align":"left","title_size":"16","type":"distribution"},"id":4558678287603081}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"6d4232b4-830f-11ee-b1ee-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackDistribution-local-1699981275","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackDistribution-local-1699981275","type":"group","widgets":[{"definition":{"legend_size":"2","requests":[{"q":"avg:system.cpu.user{account:prod} by {service,account}","style":{"palette":"purple"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by service,account","title_align":"left","title_size":"16","type":"distribution"},"id":8712658971956740},{"definition":{"legend_size":"2","requests":[{"apm_stats_query":{"env":"env","name":"name","primary_tag":"tag:*","row_type":"resource","service":"service"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by service,account","title_align":"left","title_size":"16","type":"distribution"},"id":6472827776350819}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -27,11 +27,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/4fcf19a6-7449-11ee-b2cd-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/6d4232b4-830f-11ee-b1ee-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"4fcf19a6-7449-11ee-b2cd-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackDistribution-local-1698356868","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackDistribution-local-1698356868","type":"group","widgets":[{"definition":{"legend_size":"2","requests":[{"q":"avg:system.cpu.user{account:prod} by {service,account}","style":{"palette":"purple"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by service,account","title_align":"left","title_size":"16","type":"distribution"},"id":8705220437504606},{"definition":{"legend_size":"2","requests":[{"apm_stats_query":{"env":"env","name":"name","primary_tag":"tag:*","row_type":"resource","service":"service"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by service,account","title_align":"left","title_size":"16","type":"distribution"},"id":4558678287603081}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"6d4232b4-830f-11ee-b1ee-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackDistribution-local-1699981275","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackDistribution-local-1699981275","type":"group","widgets":[{"definition":{"legend_size":"2","requests":[{"q":"avg:system.cpu.user{account:prod} by {service,account}","style":{"palette":"purple"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by service,account","title_align":"left","title_size":"16","type":"distribution"},"id":8712658971956740},{"definition":{"legend_size":"2","requests":[{"apm_stats_query":{"env":"env","name":"name","primary_tag":"tag:*","row_type":"resource","service":"service"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by service,account","title_align":"left","title_size":"16","type":"distribution"},"id":6472827776350819}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -44,11 +44,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/4fcf19a6-7449-11ee-b2cd-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/6d4232b4-830f-11ee-b1ee-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"4fcf19a6-7449-11ee-b2cd-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackDistribution-local-1698356868","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackDistribution-local-1698356868","type":"group","widgets":[{"definition":{"legend_size":"2","requests":[{"q":"avg:system.cpu.user{account:prod} by {service,account}","style":{"palette":"purple"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by service,account","title_align":"left","title_size":"16","type":"distribution"},"id":8705220437504606},{"definition":{"legend_size":"2","requests":[{"apm_stats_query":{"env":"env","name":"name","primary_tag":"tag:*","row_type":"resource","service":"service"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by service,account","title_align":"left","title_size":"16","type":"distribution"},"id":4558678287603081}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"6d4232b4-830f-11ee-b1ee-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackDistribution-local-1699981275","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackDistribution-local-1699981275","type":"group","widgets":[{"definition":{"legend_size":"2","requests":[{"q":"avg:system.cpu.user{account:prod} by {service,account}","style":{"palette":"purple"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by service,account","title_align":"left","title_size":"16","type":"distribution"},"id":8712658971956740},{"definition":{"legend_size":"2","requests":[{"apm_stats_query":{"env":"env","name":"name","primary_tag":"tag:*","row_type":"resource","service":"service"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by service,account","title_align":"left","title_size":"16","type":"distribution"},"id":6472827776350819}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -61,11 +61,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/4fcf19a6-7449-11ee-b2cd-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/6d4232b4-830f-11ee-b1ee-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"4fcf19a6-7449-11ee-b2cd-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackDistribution-local-1698356868","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackDistribution-local-1698356868","type":"group","widgets":[{"definition":{"legend_size":"2","requests":[{"q":"avg:system.cpu.user{account:prod} by {service,account}","style":{"palette":"purple"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by service,account","title_align":"left","title_size":"16","type":"distribution"},"id":8705220437504606},{"definition":{"legend_size":"2","requests":[{"apm_stats_query":{"env":"env","name":"name","primary_tag":"tag:*","row_type":"resource","service":"service"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by service,account","title_align":"left","title_size":"16","type":"distribution"},"id":4558678287603081}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"6d4232b4-830f-11ee-b1ee-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackDistribution-local-1699981275","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackDistribution-local-1699981275","type":"group","widgets":[{"definition":{"legend_size":"2","requests":[{"q":"avg:system.cpu.user{account:prod} by {service,account}","style":{"palette":"purple"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by service,account","title_align":"left","title_size":"16","type":"distribution"},"id":8712658971956740},{"definition":{"legend_size":"2","requests":[{"apm_stats_query":{"env":"env","name":"name","primary_tag":"tag:*","row_type":"resource","service":"service"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by service,account","title_align":"left","title_size":"16","type":"distribution"},"id":6472827776350819}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -78,7 +78,7 @@ interactions: headers: Accept: - '*/*' - url: https://api.datadoghq.com/api/v2/powerpacks/4fcf19a6-7449-11ee-b2cd-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/6d4232b4-830f-11ee-b1ee-da7ad0900002 method: DELETE response: body: "" @@ -94,10 +94,10 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/4fcf19a6-7449-11ee-b2cd-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/6d4232b4-830f-11ee-b1ee-da7ad0900002 method: GET response: - body: '{"errors":["Powerpack with ID 4fcf19a6-7449-11ee-b2cd-da7ad0900002 not found"]}' + body: '{"errors":["Powerpack with ID 6d4232b4-830f-11ee-b1ee-da7ad0900002 not found"]}' headers: Content-Type: - application/json diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackHeatMap.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackHeatMap.freeze index d0c519a80c..43c7916080 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackHeatMap.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackHeatMap.freeze @@ -1 +1 @@ -2023-10-30T17:47:16.963361-04:00 \ No newline at end of file +2023-11-14T12:00:45.140626-05:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackHeatMap.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackHeatMap.yaml index 6af71e404c..d1f7933429 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackHeatMap.yaml +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackHeatMap.yaml @@ -3,7 +3,7 @@ version: 1 interactions: - request: body: | - {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackHeatMap-local-1698702436","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"events":[{"q":"env:prod","tags_execution":"and"}],"legend_size":"2","requests":[{"q":"avg:system.cpu.user{account:prod} by {app}","style":{"palette":"blue"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by app","title_align":"center","title_size":"16","type":"heatmap","yaxis":{"include_zero":false,"max":"100"}}}]}},"name":"tf-TestAccDatadogPowerpackHeatMap-local-1698702436","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackHeatMap-local-1699981245","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"events":[{"q":"env:prod","tags_execution":"and"}],"legend_size":"2","requests":[{"q":"avg:system.cpu.user{account:prod} by {app}","style":{"palette":"blue"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by app","title_align":"center","title_size":"16","type":"heatmap","yaxis":{"include_zero":false,"max":"100"}}}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"name":"tf-TestAccDatadogPowerpackHeatMap-local-1699981245","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} form: {} headers: Accept: @@ -14,7 +14,7 @@ interactions: method: POST response: body: | - {"data":{"type":"powerpack","id":"e5f4bc3e-776d-11ee-b41a-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackHeatMap-local-1698702436","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackHeatMap-local-1698702436","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"events":[{"q":"env:prod","tags_execution":"and"}],"legend_size":"2","requests":[{"q":"avg:system.cpu.user{account:prod} by {app}","style":{"palette":"blue"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by app","title_align":"center","title_size":"16","type":"heatmap","yaxis":{"include_zero":false,"max":"100"}},"id":2562051174964675}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"5b1035dc-830f-11ee-9d5f-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackHeatMap-local-1699981245","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackHeatMap-local-1699981245","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"events":[{"q":"env:prod","tags_execution":"and"}],"legend_size":"2","requests":[{"q":"avg:system.cpu.user{account:prod} by {app}","style":{"palette":"blue"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by app","title_align":"center","title_size":"16","type":"heatmap","yaxis":{"include_zero":false,"max":"100"}},"id":2672644689866615}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -27,11 +27,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/e5f4bc3e-776d-11ee-b41a-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/5b1035dc-830f-11ee-9d5f-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"e5f4bc3e-776d-11ee-b41a-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackHeatMap-local-1698702436","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackHeatMap-local-1698702436","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"events":[{"q":"env:prod","tags_execution":"and"}],"legend_size":"2","requests":[{"q":"avg:system.cpu.user{account:prod} by {app}","style":{"palette":"blue"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by app","title_align":"center","title_size":"16","type":"heatmap","yaxis":{"include_zero":false,"max":"100"}},"id":2562051174964675}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"5b1035dc-830f-11ee-9d5f-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackHeatMap-local-1699981245","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackHeatMap-local-1699981245","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"events":[{"q":"env:prod","tags_execution":"and"}],"legend_size":"2","requests":[{"q":"avg:system.cpu.user{account:prod} by {app}","style":{"palette":"blue"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by app","title_align":"center","title_size":"16","type":"heatmap","yaxis":{"include_zero":false,"max":"100"}},"id":2672644689866615}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -44,11 +44,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/e5f4bc3e-776d-11ee-b41a-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/5b1035dc-830f-11ee-9d5f-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"e5f4bc3e-776d-11ee-b41a-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackHeatMap-local-1698702436","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackHeatMap-local-1698702436","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"events":[{"q":"env:prod","tags_execution":"and"}],"legend_size":"2","requests":[{"q":"avg:system.cpu.user{account:prod} by {app}","style":{"palette":"blue"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by app","title_align":"center","title_size":"16","type":"heatmap","yaxis":{"include_zero":false,"max":"100"}},"id":2562051174964675}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"5b1035dc-830f-11ee-9d5f-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackHeatMap-local-1699981245","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackHeatMap-local-1699981245","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"events":[{"q":"env:prod","tags_execution":"and"}],"legend_size":"2","requests":[{"q":"avg:system.cpu.user{account:prod} by {app}","style":{"palette":"blue"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by app","title_align":"center","title_size":"16","type":"heatmap","yaxis":{"include_zero":false,"max":"100"}},"id":2672644689866615}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -61,11 +61,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/e5f4bc3e-776d-11ee-b41a-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/5b1035dc-830f-11ee-9d5f-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"e5f4bc3e-776d-11ee-b41a-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackHeatMap-local-1698702436","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackHeatMap-local-1698702436","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"events":[{"q":"env:prod","tags_execution":"and"}],"legend_size":"2","requests":[{"q":"avg:system.cpu.user{account:prod} by {app}","style":{"palette":"blue"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by app","title_align":"center","title_size":"16","type":"heatmap","yaxis":{"include_zero":false,"max":"100"}},"id":2562051174964675}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"5b1035dc-830f-11ee-9d5f-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackHeatMap-local-1699981245","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackHeatMap-local-1699981245","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"events":[{"q":"env:prod","tags_execution":"and"}],"legend_size":"2","requests":[{"q":"avg:system.cpu.user{account:prod} by {app}","style":{"palette":"blue"}}],"show_legend":true,"title":"Avg of system.cpu.user over account:prod by app","title_align":"center","title_size":"16","type":"heatmap","yaxis":{"include_zero":false,"max":"100"}},"id":2672644689866615}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -78,7 +78,7 @@ interactions: headers: Accept: - '*/*' - url: https://api.datadoghq.com/api/v2/powerpacks/e5f4bc3e-776d-11ee-b41a-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/5b1035dc-830f-11ee-9d5f-da7ad0900002 method: DELETE response: body: "" @@ -94,10 +94,10 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/e5f4bc3e-776d-11ee-b41a-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/5b1035dc-830f-11ee-9d5f-da7ad0900002 method: GET response: - body: '{"errors":["Powerpack with ID e5f4bc3e-776d-11ee-b41a-da7ad0900002 not found"]}' + body: '{"errors":["Powerpack with ID 5b1035dc-830f-11ee-9d5f-da7ad0900002 not found"]}' headers: Content-Type: - application/json diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackHostMap.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackHostMap.freeze index 9d521a5584..72d449c786 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackHostMap.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackHostMap.freeze @@ -1 +1 @@ -2023-10-27T16:10:47.224034-04:00 \ No newline at end of file +2023-11-14T11:56:08.246073-05:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackHostMap.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackHostMap.yaml index ac08663923..b1e240da3d 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackHostMap.yaml +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackHostMap.yaml @@ -3,7 +3,7 @@ version: 1 interactions: - request: body: | - {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackHostMap-local-1698437447","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"group":["region"],"no_group_hosts":true,"no_metric_hosts":true,"node_type":"host","requests":{"fill":{"q":"avg:system.cpu.idle{env:prod} by {host}"},"size":{"q":"max:system.cpu.user{env:prod} by {host}"}},"scope":["env:prod"],"style":{"fill_max":"30","fill_min":"10","palette":"YlOrRd","palette_flip":true},"title":"system.cpu.idle, system.cpu.user","title_align":"right","title_size":"16","type":"hostmap"}}]}},"name":"tf-TestAccDatadogPowerpackHostMap-local-1698437447","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackHostMap-local-1699980968","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"group":["region"],"no_group_hosts":true,"no_metric_hosts":true,"node_type":"host","requests":{"fill":{"q":"avg:system.cpu.idle{env:prod} by {host}"},"size":{"q":"max:system.cpu.user{env:prod} by {host}"}},"scope":["env:prod"],"style":{"fill_max":"30","fill_min":"10","palette":"YlOrRd","palette_flip":true},"title":"system.cpu.idle, system.cpu.user","title_align":"right","title_size":"16","type":"hostmap"}}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"name":"tf-TestAccDatadogPowerpackHostMap-local-1699980968","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} form: {} headers: Accept: @@ -14,7 +14,7 @@ interactions: method: POST response: body: | - {"data":{"type":"powerpack","id":"ecba490a-7504-11ee-bb1c-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackHostMap-local-1698437447","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackHostMap-local-1698437447","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"group":["region"],"no_group_hosts":true,"no_metric_hosts":true,"node_type":"host","requests":{"fill":{"q":"avg:system.cpu.idle{env:prod} by {host}"},"size":{"q":"max:system.cpu.user{env:prod} by {host}"}},"scope":["env:prod"],"style":{"fill_max":"30","fill_min":"10","palette":"YlOrRd","palette_flip":true},"title":"system.cpu.idle, system.cpu.user","title_align":"right","title_size":"16","type":"hostmap"},"id":6381176237857280}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"b637a7d4-830e-11ee-884a-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackHostMap-local-1699980968","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackHostMap-local-1699980968","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"group":["region"],"no_group_hosts":true,"no_metric_hosts":true,"node_type":"host","requests":{"fill":{"q":"avg:system.cpu.idle{env:prod} by {host}"},"size":{"q":"max:system.cpu.user{env:prod} by {host}"}},"scope":["env:prod"],"style":{"fill_max":"30","fill_min":"10","palette":"YlOrRd","palette_flip":true},"title":"system.cpu.idle, system.cpu.user","title_align":"right","title_size":"16","type":"hostmap"},"id":2415549682595794}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -27,11 +27,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/ecba490a-7504-11ee-bb1c-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/b637a7d4-830e-11ee-884a-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"ecba490a-7504-11ee-bb1c-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackHostMap-local-1698437447","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackHostMap-local-1698437447","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"group":["region"],"no_group_hosts":true,"no_metric_hosts":true,"node_type":"host","requests":{"fill":{"q":"avg:system.cpu.idle{env:prod} by {host}"},"size":{"q":"max:system.cpu.user{env:prod} by {host}"}},"scope":["env:prod"],"style":{"fill_max":"30","fill_min":"10","palette":"YlOrRd","palette_flip":true},"title":"system.cpu.idle, system.cpu.user","title_align":"right","title_size":"16","type":"hostmap"},"id":6381176237857280}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"b637a7d4-830e-11ee-884a-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackHostMap-local-1699980968","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackHostMap-local-1699980968","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"group":["region"],"no_group_hosts":true,"no_metric_hosts":true,"node_type":"host","requests":{"fill":{"q":"avg:system.cpu.idle{env:prod} by {host}"},"size":{"q":"max:system.cpu.user{env:prod} by {host}"}},"scope":["env:prod"],"style":{"fill_max":"30","fill_min":"10","palette":"YlOrRd","palette_flip":true},"title":"system.cpu.idle, system.cpu.user","title_align":"right","title_size":"16","type":"hostmap"},"id":2415549682595794}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -44,11 +44,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/ecba490a-7504-11ee-bb1c-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/b637a7d4-830e-11ee-884a-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"ecba490a-7504-11ee-bb1c-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackHostMap-local-1698437447","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackHostMap-local-1698437447","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"group":["region"],"no_group_hosts":true,"no_metric_hosts":true,"node_type":"host","requests":{"fill":{"q":"avg:system.cpu.idle{env:prod} by {host}"},"size":{"q":"max:system.cpu.user{env:prod} by {host}"}},"scope":["env:prod"],"style":{"fill_max":"30","fill_min":"10","palette":"YlOrRd","palette_flip":true},"title":"system.cpu.idle, system.cpu.user","title_align":"right","title_size":"16","type":"hostmap"},"id":6381176237857280}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"b637a7d4-830e-11ee-884a-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackHostMap-local-1699980968","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackHostMap-local-1699980968","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"group":["region"],"no_group_hosts":true,"no_metric_hosts":true,"node_type":"host","requests":{"fill":{"q":"avg:system.cpu.idle{env:prod} by {host}"},"size":{"q":"max:system.cpu.user{env:prod} by {host}"}},"scope":["env:prod"],"style":{"fill_max":"30","fill_min":"10","palette":"YlOrRd","palette_flip":true},"title":"system.cpu.idle, system.cpu.user","title_align":"right","title_size":"16","type":"hostmap"},"id":2415549682595794}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -61,11 +61,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/ecba490a-7504-11ee-bb1c-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/b637a7d4-830e-11ee-884a-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"ecba490a-7504-11ee-bb1c-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackHostMap-local-1698437447","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackHostMap-local-1698437447","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"group":["region"],"no_group_hosts":true,"no_metric_hosts":true,"node_type":"host","requests":{"fill":{"q":"avg:system.cpu.idle{env:prod} by {host}"},"size":{"q":"max:system.cpu.user{env:prod} by {host}"}},"scope":["env:prod"],"style":{"fill_max":"30","fill_min":"10","palette":"YlOrRd","palette_flip":true},"title":"system.cpu.idle, system.cpu.user","title_align":"right","title_size":"16","type":"hostmap"},"id":6381176237857280}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"b637a7d4-830e-11ee-884a-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackHostMap-local-1699980968","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackHostMap-local-1699980968","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"group":["region"],"no_group_hosts":true,"no_metric_hosts":true,"node_type":"host","requests":{"fill":{"q":"avg:system.cpu.idle{env:prod} by {host}"},"size":{"q":"max:system.cpu.user{env:prod} by {host}"}},"scope":["env:prod"],"style":{"fill_max":"30","fill_min":"10","palette":"YlOrRd","palette_flip":true},"title":"system.cpu.idle, system.cpu.user","title_align":"right","title_size":"16","type":"hostmap"},"id":2415549682595794}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -78,7 +78,7 @@ interactions: headers: Accept: - '*/*' - url: https://api.datadoghq.com/api/v2/powerpacks/ecba490a-7504-11ee-bb1c-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/b637a7d4-830e-11ee-884a-da7ad0900002 method: DELETE response: body: "" @@ -94,10 +94,10 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/ecba490a-7504-11ee-bb1c-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/b637a7d4-830e-11ee-884a-da7ad0900002 method: GET response: - body: '{"errors":["Powerpack with ID ecba490a-7504-11ee-bb1c-da7ad0900002 not found"]}' + body: '{"errors":["Powerpack with ID b637a7d4-830e-11ee-884a-da7ad0900002 not found"]}' headers: Content-Type: - application/json diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackListStream.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackListStream.freeze index af4691c40f..0ece2e789d 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackListStream.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackListStream.freeze @@ -1 +1 @@ -2023-10-30T21:52:53.923028-04:00 \ No newline at end of file +2023-11-14T11:55:34.816172-05:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackListStream.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackListStream.yaml index 54cd896288..b7726ec212 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackListStream.yaml +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackListStream.yaml @@ -3,7 +3,7 @@ version: 1 interactions: - request: body: | - {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackListStream-local-1698717173","type":"group","widgets":[{"definition":{"requests":[{"columns":[{"field":"details","width":"auto"}],"query":{"data_source":"rum_issue_stream","query_string":""},"response_format":"event_list"},{"columns":[{"field":"details","width":"auto"}],"query":{"data_source":"apm_issue_stream","indexes":["timestamp","message"],"query_string":"env: prod"},"response_format":"event_list"}],"title":"List Stream 1","title_align":"right","title_size":"16","type":"list_stream"},"layout":{"height":5,"width":5,"x":5,"y":5}}]}},"name":"tf-TestAccDatadogPowerpackListStream-local-1698717173","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackListStream-local-1699980934","type":"group","widgets":[{"definition":{"requests":[{"columns":[{"field":"details","width":"auto"}],"query":{"data_source":"rum_issue_stream","query_string":""},"response_format":"event_list"},{"columns":[{"field":"details","width":"auto"}],"query":{"data_source":"apm_issue_stream","indexes":["timestamp","message"],"query_string":"env: prod"},"response_format":"event_list"}],"title":"List Stream 1","title_align":"right","title_size":"16","type":"list_stream"},"layout":{"height":5,"width":5,"x":5,"y":5}}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"name":"tf-TestAccDatadogPowerpackListStream-local-1699980934","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} form: {} headers: Accept: @@ -14,7 +14,7 @@ interactions: method: POST response: body: | - {"data":{"type":"powerpack","id":"35e1c6f2-7790-11ee-812b-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackListStream-local-1698717173","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackListStream-local-1698717173","type":"group","widgets":[{"definition":{"requests":[{"columns":[{"field":"details","width":"auto"}],"query":{"data_source":"rum_issue_stream","query_string":""},"response_format":"event_list"},{"columns":[{"field":"details","width":"auto"}],"query":{"data_source":"apm_issue_stream","indexes":["timestamp","message"],"query_string":"env: prod"},"response_format":"event_list"}],"title":"List Stream 1","title_align":"right","title_size":"16","type":"list_stream"},"layout":{"height":5,"width":5,"x":5,"y":5},"id":4489716557213225}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"a251c39e-830e-11ee-8342-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackListStream-local-1699980934","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackListStream-local-1699980934","type":"group","widgets":[{"definition":{"requests":[{"columns":[{"field":"details","width":"auto"}],"query":{"data_source":"rum_issue_stream","query_string":""},"response_format":"event_list"},{"columns":[{"field":"details","width":"auto"}],"query":{"data_source":"apm_issue_stream","indexes":["timestamp","message"],"query_string":"env: prod"},"response_format":"event_list"}],"title":"List Stream 1","title_align":"right","title_size":"16","type":"list_stream"},"layout":{"height":5,"width":5,"x":5,"y":5},"id":6495310728210495}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -27,11 +27,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/35e1c6f2-7790-11ee-812b-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/a251c39e-830e-11ee-8342-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"35e1c6f2-7790-11ee-812b-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackListStream-local-1698717173","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackListStream-local-1698717173","type":"group","widgets":[{"definition":{"requests":[{"columns":[{"field":"details","width":"auto"}],"query":{"data_source":"rum_issue_stream","query_string":""},"response_format":"event_list"},{"columns":[{"field":"details","width":"auto"}],"query":{"data_source":"apm_issue_stream","indexes":["timestamp","message"],"query_string":"env: prod"},"response_format":"event_list"}],"title":"List Stream 1","title_align":"right","title_size":"16","type":"list_stream"},"layout":{"height":5,"width":5,"x":5,"y":5},"id":4489716557213225}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"a251c39e-830e-11ee-8342-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackListStream-local-1699980934","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackListStream-local-1699980934","type":"group","widgets":[{"definition":{"requests":[{"columns":[{"field":"details","width":"auto"}],"query":{"data_source":"rum_issue_stream","query_string":""},"response_format":"event_list"},{"columns":[{"field":"details","width":"auto"}],"query":{"data_source":"apm_issue_stream","indexes":["timestamp","message"],"query_string":"env: prod"},"response_format":"event_list"}],"title":"List Stream 1","title_align":"right","title_size":"16","type":"list_stream"},"layout":{"height":5,"width":5,"x":5,"y":5},"id":6495310728210495}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -44,11 +44,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/35e1c6f2-7790-11ee-812b-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/a251c39e-830e-11ee-8342-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"35e1c6f2-7790-11ee-812b-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackListStream-local-1698717173","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackListStream-local-1698717173","type":"group","widgets":[{"definition":{"requests":[{"columns":[{"field":"details","width":"auto"}],"query":{"data_source":"rum_issue_stream","query_string":""},"response_format":"event_list"},{"columns":[{"field":"details","width":"auto"}],"query":{"data_source":"apm_issue_stream","indexes":["timestamp","message"],"query_string":"env: prod"},"response_format":"event_list"}],"title":"List Stream 1","title_align":"right","title_size":"16","type":"list_stream"},"layout":{"height":5,"width":5,"x":5,"y":5},"id":4489716557213225}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"a251c39e-830e-11ee-8342-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackListStream-local-1699980934","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackListStream-local-1699980934","type":"group","widgets":[{"definition":{"requests":[{"columns":[{"field":"details","width":"auto"}],"query":{"data_source":"rum_issue_stream","query_string":""},"response_format":"event_list"},{"columns":[{"field":"details","width":"auto"}],"query":{"data_source":"apm_issue_stream","indexes":["timestamp","message"],"query_string":"env: prod"},"response_format":"event_list"}],"title":"List Stream 1","title_align":"right","title_size":"16","type":"list_stream"},"layout":{"height":5,"width":5,"x":5,"y":5},"id":6495310728210495}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -61,11 +61,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/35e1c6f2-7790-11ee-812b-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/a251c39e-830e-11ee-8342-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"35e1c6f2-7790-11ee-812b-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackListStream-local-1698717173","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackListStream-local-1698717173","type":"group","widgets":[{"definition":{"requests":[{"columns":[{"field":"details","width":"auto"}],"query":{"data_source":"rum_issue_stream","query_string":""},"response_format":"event_list"},{"columns":[{"field":"details","width":"auto"}],"query":{"data_source":"apm_issue_stream","indexes":["timestamp","message"],"query_string":"env: prod"},"response_format":"event_list"}],"title":"List Stream 1","title_align":"right","title_size":"16","type":"list_stream"},"layout":{"height":5,"width":5,"x":5,"y":5},"id":4489716557213225}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"a251c39e-830e-11ee-8342-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackListStream-local-1699980934","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackListStream-local-1699980934","type":"group","widgets":[{"definition":{"requests":[{"columns":[{"field":"details","width":"auto"}],"query":{"data_source":"rum_issue_stream","query_string":""},"response_format":"event_list"},{"columns":[{"field":"details","width":"auto"}],"query":{"data_source":"apm_issue_stream","indexes":["timestamp","message"],"query_string":"env: prod"},"response_format":"event_list"}],"title":"List Stream 1","title_align":"right","title_size":"16","type":"list_stream"},"layout":{"height":5,"width":5,"x":5,"y":5},"id":6495310728210495}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -78,7 +78,7 @@ interactions: headers: Accept: - '*/*' - url: https://api.datadoghq.com/api/v2/powerpacks/35e1c6f2-7790-11ee-812b-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/a251c39e-830e-11ee-8342-da7ad0900002 method: DELETE response: body: "" @@ -94,10 +94,10 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/35e1c6f2-7790-11ee-812b-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/a251c39e-830e-11ee-8342-da7ad0900002 method: GET response: - body: '{"errors":["Powerpack with ID 35e1c6f2-7790-11ee-812b-da7ad0900002 not found"]}' + body: '{"errors":["Powerpack with ID a251c39e-830e-11ee-8342-da7ad0900002 not found"]}' headers: Content-Type: - application/json diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackLogStream.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackLogStream.freeze index 3370ce3af4..b12002fa87 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackLogStream.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackLogStream.freeze @@ -1 +1 @@ -2023-10-30T20:38:44.024673-04:00 \ No newline at end of file +2023-11-14T12:13:49.221503-05:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackLogStream.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackLogStream.yaml index c1340e7978..624d5c1be8 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackLogStream.yaml +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackLogStream.yaml @@ -3,7 +3,7 @@ version: 1 interactions: - request: body: | - {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackLogStream-local-1698712724","type":"group","widgets":[{"definition":{"columns":["core_host","core_service"],"indexes":["main"],"message_display":"expanded-md","query":"status:error env:prod","show_date_column":true,"show_message_column":true,"sort":{"column":"time","order":"desc"},"title":"Log Stream","title_align":"right","title_size":"16","type":"log_stream"},"layout":{"height":5,"width":5,"x":5,"y":5}}]}},"name":"tf-TestAccDatadogPowerpackLogStream-local-1698712724","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackLogStream-local-1699982029","type":"group","widgets":[{"definition":{"columns":["core_host","core_service"],"indexes":["main"],"message_display":"expanded-md","query":"status:error env:prod","show_date_column":true,"show_message_column":true,"sort":{"column":"time","order":"desc"},"title":"Log Stream","title_align":"right","title_size":"16","type":"log_stream"},"layout":{"height":5,"width":5,"x":5,"y":5}}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"name":"tf-TestAccDatadogPowerpackLogStream-local-1699982029","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} form: {} headers: Accept: @@ -14,7 +14,7 @@ interactions: method: POST response: body: | - {"data":{"type":"powerpack","id":"d97ffcda-7785-11ee-9455-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackLogStream-local-1698712724","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackLogStream-local-1698712724","type":"group","widgets":[{"definition":{"columns":["core_host","core_service"],"indexes":["main"],"message_display":"expanded-md","query":"status:error env:prod","show_date_column":true,"show_message_column":true,"sort":{"column":"time","order":"desc"},"title":"Log Stream","title_align":"right","title_size":"16","type":"log_stream"},"layout":{"height":5,"width":5,"x":5,"y":5},"id":4611087252319878}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"2e800f0e-8311-11ee-b663-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackLogStream-local-1699982029","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackLogStream-local-1699982029","type":"group","widgets":[{"definition":{"columns":["core_host","core_service"],"indexes":["main"],"message_display":"expanded-md","query":"status:error env:prod","show_date_column":true,"show_message_column":true,"sort":{"column":"time","order":"desc"},"title":"Log Stream","title_align":"right","title_size":"16","type":"log_stream"},"layout":{"height":5,"width":5,"x":5,"y":5},"id":8205505737096580}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -27,11 +27,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/d97ffcda-7785-11ee-9455-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/2e800f0e-8311-11ee-b663-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"d97ffcda-7785-11ee-9455-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackLogStream-local-1698712724","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackLogStream-local-1698712724","type":"group","widgets":[{"definition":{"columns":["core_host","core_service"],"indexes":["main"],"message_display":"expanded-md","query":"status:error env:prod","show_date_column":true,"show_message_column":true,"sort":{"column":"time","order":"desc"},"title":"Log Stream","title_align":"right","title_size":"16","type":"log_stream"},"layout":{"height":5,"width":5,"x":5,"y":5},"id":4611087252319878}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"2e800f0e-8311-11ee-b663-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackLogStream-local-1699982029","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackLogStream-local-1699982029","type":"group","widgets":[{"definition":{"columns":["core_host","core_service"],"indexes":["main"],"message_display":"expanded-md","query":"status:error env:prod","show_date_column":true,"show_message_column":true,"sort":{"column":"time","order":"desc"},"title":"Log Stream","title_align":"right","title_size":"16","type":"log_stream"},"layout":{"height":5,"width":5,"x":5,"y":5},"id":8205505737096580}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -44,11 +44,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/d97ffcda-7785-11ee-9455-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/2e800f0e-8311-11ee-b663-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"d97ffcda-7785-11ee-9455-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackLogStream-local-1698712724","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackLogStream-local-1698712724","type":"group","widgets":[{"definition":{"columns":["core_host","core_service"],"indexes":["main"],"message_display":"expanded-md","query":"status:error env:prod","show_date_column":true,"show_message_column":true,"sort":{"column":"time","order":"desc"},"title":"Log Stream","title_align":"right","title_size":"16","type":"log_stream"},"layout":{"height":5,"width":5,"x":5,"y":5},"id":4611087252319878}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"2e800f0e-8311-11ee-b663-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackLogStream-local-1699982029","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackLogStream-local-1699982029","type":"group","widgets":[{"definition":{"columns":["core_host","core_service"],"indexes":["main"],"message_display":"expanded-md","query":"status:error env:prod","show_date_column":true,"show_message_column":true,"sort":{"column":"time","order":"desc"},"title":"Log Stream","title_align":"right","title_size":"16","type":"log_stream"},"layout":{"height":5,"width":5,"x":5,"y":5},"id":8205505737096580}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -61,11 +61,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/d97ffcda-7785-11ee-9455-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/2e800f0e-8311-11ee-b663-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"d97ffcda-7785-11ee-9455-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackLogStream-local-1698712724","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackLogStream-local-1698712724","type":"group","widgets":[{"definition":{"columns":["core_host","core_service"],"indexes":["main"],"message_display":"expanded-md","query":"status:error env:prod","show_date_column":true,"show_message_column":true,"sort":{"column":"time","order":"desc"},"title":"Log Stream","title_align":"right","title_size":"16","type":"log_stream"},"layout":{"height":5,"width":5,"x":5,"y":5},"id":4611087252319878}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"2e800f0e-8311-11ee-b663-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackLogStream-local-1699982029","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackLogStream-local-1699982029","type":"group","widgets":[{"definition":{"columns":["core_host","core_service"],"indexes":["main"],"message_display":"expanded-md","query":"status:error env:prod","show_date_column":true,"show_message_column":true,"sort":{"column":"time","order":"desc"},"title":"Log Stream","title_align":"right","title_size":"16","type":"log_stream"},"layout":{"height":5,"width":5,"x":5,"y":5},"id":8205505737096580}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -78,7 +78,7 @@ interactions: headers: Accept: - '*/*' - url: https://api.datadoghq.com/api/v2/powerpacks/d97ffcda-7785-11ee-9455-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/2e800f0e-8311-11ee-b663-da7ad0900002 method: DELETE response: body: "" @@ -94,10 +94,10 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/d97ffcda-7785-11ee-9455-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/2e800f0e-8311-11ee-b663-da7ad0900002 method: GET response: - body: '{"errors":["Powerpack with ID d97ffcda-7785-11ee-9455-da7ad0900002 not found"]}' + body: '{"errors":["Powerpack with ID 2e800f0e-8311-11ee-b663-da7ad0900002 not found"]}' headers: Content-Type: - application/json diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackRun_Workflow.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackRun_Workflow.freeze index d86b2f6acc..21ff355fac 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackRun_Workflow.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackRun_Workflow.freeze @@ -1 +1 @@ -2023-10-30T23:09:42.985605-04:00 \ No newline at end of file +2023-11-14T12:16:50.219441-05:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackRun_Workflow.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackRun_Workflow.yaml new file mode 100644 index 0000000000..8fda9d03ee --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackRun_Workflow.yaml @@ -0,0 +1,106 @@ +--- +version: 1 +interactions: +- request: + body: | + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackRun_Workflow-local-1699982210","type":"group","widgets":[{"definition":{"inputs":[{"name":"env","value":"$Env.value"},{"name":"Foo","value":"$Env"}],"title":"My workflow widget","title_align":"left","title_size":"13","type":"run_workflow","workflow_id":"2e055f16-8b6a-4cdd-b452-17a34c44b160"}}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"name":"tf-TestAccDatadogPowerpackRun_Workflow-local-1699982210","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks + method: POST + response: + body: | + {"data":{"type":"powerpack","id":"9b4a791c-8311-11ee-b11e-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackRun_Workflow-local-1699982210","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackRun_Workflow-local-1699982210","type":"group","widgets":[{"definition":{"inputs":[{"name":"env","value":"$Env.value"},{"name":"Foo","value":"$Env"}],"title":"My workflow widget","title_align":"left","title_size":"13","type":"run_workflow","workflow_id":"2e055f16-8b6a-4cdd-b452-17a34c44b160"},"id":7202129812117789}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/9b4a791c-8311-11ee-b11e-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"9b4a791c-8311-11ee-b11e-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackRun_Workflow-local-1699982210","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackRun_Workflow-local-1699982210","type":"group","widgets":[{"definition":{"inputs":[{"name":"env","value":"$Env.value"},{"name":"Foo","value":"$Env"}],"title":"My workflow widget","title_align":"left","title_size":"13","type":"run_workflow","workflow_id":"2e055f16-8b6a-4cdd-b452-17a34c44b160"},"id":7202129812117789}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/9b4a791c-8311-11ee-b11e-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"9b4a791c-8311-11ee-b11e-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackRun_Workflow-local-1699982210","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackRun_Workflow-local-1699982210","type":"group","widgets":[{"definition":{"inputs":[{"name":"env","value":"$Env.value"},{"name":"Foo","value":"$Env"}],"title":"My workflow widget","title_align":"left","title_size":"13","type":"run_workflow","workflow_id":"2e055f16-8b6a-4cdd-b452-17a34c44b160"},"id":7202129812117789}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/9b4a791c-8311-11ee-b11e-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"9b4a791c-8311-11ee-b11e-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackRun_Workflow-local-1699982210","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackRun_Workflow-local-1699982210","type":"group","widgets":[{"definition":{"inputs":[{"name":"env","value":"$Env.value"},{"name":"Foo","value":"$Env"}],"title":"My workflow widget","title_align":"left","title_size":"13","type":"run_workflow","workflow_id":"2e055f16-8b6a-4cdd-b452-17a34c44b160"},"id":7202129812117789}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - '*/*' + url: https://api.datadoghq.com/api/v2/powerpacks/9b4a791c-8311-11ee-b11e-da7ad0900002 + method: DELETE + response: + body: "" + headers: + Content-Type: + - text/html; charset=utf-8 + status: 204 No Content + code: 204 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/9b4a791c-8311-11ee-b11e-da7ad0900002 + method: GET + response: + body: '{"errors":["Powerpack with ID 9b4a791c-8311-11ee-b11e-da7ad0900002 not found"]}' + headers: + Content-Type: + - application/json + status: 404 Not Found + code: 404 + duration: "" diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackScatterplot.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackScatterplot.freeze index 84d0368c11..30fcdd981d 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackScatterplot.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackScatterplot.freeze @@ -1 +1 @@ -2023-10-27T16:54:31.417556-04:00 \ No newline at end of file +2023-11-14T12:10:27.927512-05:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackScatterplot.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackScatterplot.yaml index c780701ce2..31ed7beea7 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackScatterplot.yaml +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackScatterplot.yaml @@ -3,7 +3,7 @@ version: 1 interactions: - request: body: | - {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackScatterplot-local-1698440071","type":"group","widgets":[{"definition":{"color_by_groups":["app"],"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"requests":{"x":{"aggregator":"avg","q":"avg:system.cpu.user{account:prod} by {service, team, app}"},"y":{"aggregator":"avg","q":"avg:system.mem.used{env:prod} by {service, team, app}"}},"title":"system.mem.used and system.cpu.user by service,team,app colored by app","title_align":"right","title_size":"16","type":"scatterplot","xaxis":{"include_zero":false,"label":"cpu (%)","max":"100","min":"0","scale":"log"},"yaxis":{"include_zero":false,"label":"mem (Gib)","min":"1","scale":"log"}}}]}},"name":"tf-TestAccDatadogPowerpackScatterplot-local-1698440071","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackScatterplot-local-1699981827","type":"group","widgets":[{"definition":{"color_by_groups":["app"],"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"requests":{"x":{"aggregator":"avg","q":"avg:system.cpu.user{account:prod} by {service, team, app}"},"y":{"aggregator":"avg","q":"avg:system.mem.used{env:prod} by {service, team, app}"}},"title":"system.mem.used and system.cpu.user by service,team,app colored by app","title_align":"right","title_size":"16","type":"scatterplot","xaxis":{"include_zero":false,"label":"cpu (%)","max":"100","min":"0","scale":"log"},"yaxis":{"include_zero":false,"label":"mem (Gib)","min":"1","scale":"log"}}}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"name":"tf-TestAccDatadogPowerpackScatterplot-local-1699981827","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} form: {} headers: Accept: @@ -14,7 +14,7 @@ interactions: method: POST response: body: | - {"data":{"type":"powerpack","id":"0803813a-750b-11ee-80ed-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackScatterplot-local-1698440071","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackScatterplot-local-1698440071","type":"group","widgets":[{"definition":{"color_by_groups":["app"],"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"requests":{"x":{"aggregator":"avg","q":"avg:system.cpu.user{account:prod} by {service, team, app}"},"y":{"aggregator":"avg","q":"avg:system.mem.used{env:prod} by {service, team, app}"}},"title":"system.mem.used and system.cpu.user by service,team,app colored by app","title_align":"right","title_size":"16","type":"scatterplot","xaxis":{"include_zero":false,"label":"cpu (%)","max":"100","min":"0","scale":"log"},"yaxis":{"include_zero":false,"label":"mem (Gib)","min":"1","scale":"log"}},"id":4648756950629827}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"b6723e38-8310-11ee-9fb3-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackScatterplot-local-1699981827","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackScatterplot-local-1699981827","type":"group","widgets":[{"definition":{"color_by_groups":["app"],"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"requests":{"x":{"aggregator":"avg","q":"avg:system.cpu.user{account:prod} by {service, team, app}"},"y":{"aggregator":"avg","q":"avg:system.mem.used{env:prod} by {service, team, app}"}},"title":"system.mem.used and system.cpu.user by service,team,app colored by app","title_align":"right","title_size":"16","type":"scatterplot","xaxis":{"include_zero":false,"label":"cpu (%)","max":"100","min":"0","scale":"log"},"yaxis":{"include_zero":false,"label":"mem (Gib)","min":"1","scale":"log"}},"id":3712857863623360}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -27,11 +27,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/0803813a-750b-11ee-80ed-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/b6723e38-8310-11ee-9fb3-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"0803813a-750b-11ee-80ed-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackScatterplot-local-1698440071","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackScatterplot-local-1698440071","type":"group","widgets":[{"definition":{"color_by_groups":["app"],"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"requests":{"x":{"aggregator":"avg","q":"avg:system.cpu.user{account:prod} by {service, team, app}"},"y":{"aggregator":"avg","q":"avg:system.mem.used{env:prod} by {service, team, app}"}},"title":"system.mem.used and system.cpu.user by service,team,app colored by app","title_align":"right","title_size":"16","type":"scatterplot","xaxis":{"include_zero":false,"label":"cpu (%)","max":"100","min":"0","scale":"log"},"yaxis":{"include_zero":false,"label":"mem (Gib)","min":"1","scale":"log"}},"id":4648756950629827}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"b6723e38-8310-11ee-9fb3-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackScatterplot-local-1699981827","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackScatterplot-local-1699981827","type":"group","widgets":[{"definition":{"color_by_groups":["app"],"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"requests":{"x":{"aggregator":"avg","q":"avg:system.cpu.user{account:prod} by {service, team, app}"},"y":{"aggregator":"avg","q":"avg:system.mem.used{env:prod} by {service, team, app}"}},"title":"system.mem.used and system.cpu.user by service,team,app colored by app","title_align":"right","title_size":"16","type":"scatterplot","xaxis":{"include_zero":false,"label":"cpu (%)","max":"100","min":"0","scale":"log"},"yaxis":{"include_zero":false,"label":"mem (Gib)","min":"1","scale":"log"}},"id":3712857863623360}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -44,11 +44,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/0803813a-750b-11ee-80ed-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/b6723e38-8310-11ee-9fb3-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"0803813a-750b-11ee-80ed-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackScatterplot-local-1698440071","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackScatterplot-local-1698440071","type":"group","widgets":[{"definition":{"color_by_groups":["app"],"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"requests":{"x":{"aggregator":"avg","q":"avg:system.cpu.user{account:prod} by {service, team, app}"},"y":{"aggregator":"avg","q":"avg:system.mem.used{env:prod} by {service, team, app}"}},"title":"system.mem.used and system.cpu.user by service,team,app colored by app","title_align":"right","title_size":"16","type":"scatterplot","xaxis":{"include_zero":false,"label":"cpu (%)","max":"100","min":"0","scale":"log"},"yaxis":{"include_zero":false,"label":"mem (Gib)","min":"1","scale":"log"}},"id":4648756950629827}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"b6723e38-8310-11ee-9fb3-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackScatterplot-local-1699981827","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackScatterplot-local-1699981827","type":"group","widgets":[{"definition":{"color_by_groups":["app"],"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"requests":{"x":{"aggregator":"avg","q":"avg:system.cpu.user{account:prod} by {service, team, app}"},"y":{"aggregator":"avg","q":"avg:system.mem.used{env:prod} by {service, team, app}"}},"title":"system.mem.used and system.cpu.user by service,team,app colored by app","title_align":"right","title_size":"16","type":"scatterplot","xaxis":{"include_zero":false,"label":"cpu (%)","max":"100","min":"0","scale":"log"},"yaxis":{"include_zero":false,"label":"mem (Gib)","min":"1","scale":"log"}},"id":3712857863623360}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -61,11 +61,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/0803813a-750b-11ee-80ed-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/b6723e38-8310-11ee-9fb3-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"0803813a-750b-11ee-80ed-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackScatterplot-local-1698440071","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackScatterplot-local-1698440071","type":"group","widgets":[{"definition":{"color_by_groups":["app"],"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"requests":{"x":{"aggregator":"avg","q":"avg:system.cpu.user{account:prod} by {service, team, app}"},"y":{"aggregator":"avg","q":"avg:system.mem.used{env:prod} by {service, team, app}"}},"title":"system.mem.used and system.cpu.user by service,team,app colored by app","title_align":"right","title_size":"16","type":"scatterplot","xaxis":{"include_zero":false,"label":"cpu (%)","max":"100","min":"0","scale":"log"},"yaxis":{"include_zero":false,"label":"mem (Gib)","min":"1","scale":"log"}},"id":4648756950629827}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"b6723e38-8310-11ee-9fb3-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackScatterplot-local-1699981827","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackScatterplot-local-1699981827","type":"group","widgets":[{"definition":{"color_by_groups":["app"],"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"requests":{"x":{"aggregator":"avg","q":"avg:system.cpu.user{account:prod} by {service, team, app}"},"y":{"aggregator":"avg","q":"avg:system.mem.used{env:prod} by {service, team, app}"}},"title":"system.mem.used and system.cpu.user by service,team,app colored by app","title_align":"right","title_size":"16","type":"scatterplot","xaxis":{"include_zero":false,"label":"cpu (%)","max":"100","min":"0","scale":"log"},"yaxis":{"include_zero":false,"label":"mem (Gib)","min":"1","scale":"log"}},"id":3712857863623360}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -78,7 +78,7 @@ interactions: headers: Accept: - '*/*' - url: https://api.datadoghq.com/api/v2/powerpacks/0803813a-750b-11ee-80ed-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/b6723e38-8310-11ee-9fb3-da7ad0900002 method: DELETE response: body: "" @@ -94,10 +94,10 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/0803813a-750b-11ee-80ed-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/b6723e38-8310-11ee-9fb3-da7ad0900002 method: GET response: - body: '{"errors":["Powerpack with ID 0803813a-750b-11ee-80ed-da7ad0900002 not found"]}' + body: '{"errors":["Powerpack with ID b6723e38-8310-11ee-9fb3-da7ad0900002 not found"]}' headers: Content-Type: - application/json diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackSlo.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackSlo.freeze index d41e82ce43..8ad61da26b 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackSlo.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackSlo.freeze @@ -1 +1 @@ -2023-10-30T22:57:34.963347-04:00 \ No newline at end of file +2023-11-14T12:09:17.418983-05:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackSlo.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackSlo.yaml new file mode 100644 index 0000000000..22dc0c747a --- /dev/null +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackSlo.yaml @@ -0,0 +1,106 @@ +--- +version: 1 +interactions: +- request: + body: | + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackSlo-local-1699981757","type":"group","widgets":[{"definition":{"additional_query_filters":"!host:excluded_host","global_time_target":"99.0","show_error_budget":true,"slo_id":"b4c7739b2af25f9d947f828730357832","time_windows":["90d","previous_week","global_time"],"title_align":"center","title_size":"16","type":"slo","view_mode":"both","view_type":"detail"}}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"name":"tf-TestAccDatadogPowerpackSlo-local-1699981757","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + form: {} + headers: + Accept: + - application/json + Content-Type: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks + method: POST + response: + body: | + {"data":{"type":"powerpack","id":"8c576b8c-8310-11ee-991a-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackSlo-local-1699981757","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackSlo-local-1699981757","type":"group","widgets":[{"definition":{"additional_query_filters":"!host:excluded_host","global_time_target":"99.0","show_error_budget":true,"slo_id":"b4c7739b2af25f9d947f828730357832","time_windows":["90d","previous_week","global_time"],"title_align":"center","title_size":"16","type":"slo","view_mode":"both","view_type":"detail"},"id":3350778046378362}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/8c576b8c-8310-11ee-991a-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"8c576b8c-8310-11ee-991a-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackSlo-local-1699981757","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackSlo-local-1699981757","type":"group","widgets":[{"definition":{"additional_query_filters":"!host:excluded_host","global_time_target":"99.0","show_error_budget":true,"slo_id":"b4c7739b2af25f9d947f828730357832","time_windows":["90d","previous_week","global_time"],"title_align":"center","title_size":"16","type":"slo","view_mode":"both","view_type":"detail"},"id":3350778046378362}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/8c576b8c-8310-11ee-991a-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"8c576b8c-8310-11ee-991a-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackSlo-local-1699981757","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackSlo-local-1699981757","type":"group","widgets":[{"definition":{"additional_query_filters":"!host:excluded_host","global_time_target":"99.0","show_error_budget":true,"slo_id":"b4c7739b2af25f9d947f828730357832","time_windows":["90d","previous_week","global_time"],"title_align":"center","title_size":"16","type":"slo","view_mode":"both","view_type":"detail"},"id":3350778046378362}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/8c576b8c-8310-11ee-991a-da7ad0900002 + method: GET + response: + body: | + {"data":{"type":"powerpack","id":"8c576b8c-8310-11ee-991a-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackSlo-local-1699981757","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackSlo-local-1699981757","type":"group","widgets":[{"definition":{"additional_query_filters":"!host:excluded_host","global_time_target":"99.0","show_error_budget":true,"slo_id":"b4c7739b2af25f9d947f828730357832","time_windows":["90d","previous_week","global_time"],"title_align":"center","title_size":"16","type":"slo","view_mode":"both","view_type":"detail"},"id":3350778046378362}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + headers: + Content-Type: + - application/json + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - '*/*' + url: https://api.datadoghq.com/api/v2/powerpacks/8c576b8c-8310-11ee-991a-da7ad0900002 + method: DELETE + response: + body: "" + headers: + Content-Type: + - text/html; charset=utf-8 + status: 204 No Content + code: 204 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + url: https://api.datadoghq.com/api/v2/powerpacks/8c576b8c-8310-11ee-991a-da7ad0900002 + method: GET + response: + body: '{"errors":["Powerpack with ID 8c576b8c-8310-11ee-991a-da7ad0900002 not found"]}' + headers: + Content-Type: + - application/json + status: 404 Not Found + code: 404 + duration: "" diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackTopologyMap.freeze b/datadog/tests/cassettes/TestAccDatadogPowerpackTopologyMap.freeze index af62f494d6..2895acd8ae 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackTopologyMap.freeze +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackTopologyMap.freeze @@ -1 +1 @@ -2023-10-27T16:54:28.509648-04:00 \ No newline at end of file +2023-11-14T12:08:40.082117-05:00 \ No newline at end of file diff --git a/datadog/tests/cassettes/TestAccDatadogPowerpackTopologyMap.yaml b/datadog/tests/cassettes/TestAccDatadogPowerpackTopologyMap.yaml index b3253fb9e3..bd69bc2967 100644 --- a/datadog/tests/cassettes/TestAccDatadogPowerpackTopologyMap.yaml +++ b/datadog/tests/cassettes/TestAccDatadogPowerpackTopologyMap.yaml @@ -3,7 +3,7 @@ version: 1 interactions: - request: body: | - {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackTopologyMap-local-1698439033","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"requests":[{"query":[{"data_source":"service_map","filters":["env:prod","datacenter:dc1"],"service":"master-db"}],"request_type":"topology"}],"title":"env: prod, datacenter:dc1, service: master-db","title_align":"left","title_size":"16","type":"topology_map"},"layout":{"height":4,"width":3,"x":5,"y":5}}]}},"name":"tf-TestAccDatadogPowerpackTopologyMap-local-1698439033","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} + {"data":{"attributes":{"description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackTopologyMap-local-1699981720","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"requests":[{"query":[{"data_source":"service_map","filters":["env:prod","datacenter:dc1"],"service":"master-db"}],"request_type":"topology"}],"title":"env: prod, datacenter:dc1, service: master-db","title_align":"left","title_size":"16","type":"topology_map"},"layout":{"height":4,"width":3,"x":5,"y":5}}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"name":"tf-TestAccDatadogPowerpackTopologyMap-local-1699981720","tags":["tag:foo1"],"template_variables":[{"defaults":["defaults"],"name":"datacenter"}]},"type":"powerpack"}} form: {} headers: Accept: @@ -14,7 +14,7 @@ interactions: method: POST response: body: | - {"data":{"type":"powerpack","id":"9d4363b2-7508-11ee-86ac-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackTopologyMap-local-1698439033","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackTopologyMap-local-1698439033","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"requests":[{"query":[{"data_source":"service_map","filters":["env:prod","datacenter:dc1"],"service":"master-db"}],"request_type":"topology"}],"title":"env: prod, datacenter:dc1, service: master-db","title_align":"left","title_size":"16","type":"topology_map"},"layout":{"height":4,"width":3,"x":5,"y":5},"id":4934070150198104}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"75fe2c0e-8310-11ee-898e-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackTopologyMap-local-1699981720","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackTopologyMap-local-1699981720","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"requests":[{"query":[{"data_source":"service_map","filters":["env:prod","datacenter:dc1"],"service":"master-db"}],"request_type":"topology"}],"title":"env: prod, datacenter:dc1, service: master-db","title_align":"left","title_size":"16","type":"topology_map"},"layout":{"height":4,"width":3,"x":5,"y":5},"id":535064910123530}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -27,11 +27,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/9d4363b2-7508-11ee-86ac-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/75fe2c0e-8310-11ee-898e-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"9d4363b2-7508-11ee-86ac-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackTopologyMap-local-1698439033","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackTopologyMap-local-1698439033","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"requests":[{"query":[{"data_source":"service_map","filters":["env:prod","datacenter:dc1"],"service":"master-db"}],"request_type":"topology"}],"title":"env: prod, datacenter:dc1, service: master-db","title_align":"left","title_size":"16","type":"topology_map"},"layout":{"height":4,"width":3,"x":5,"y":5},"id":4934070150198104}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"75fe2c0e-8310-11ee-898e-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackTopologyMap-local-1699981720","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackTopologyMap-local-1699981720","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"requests":[{"query":[{"data_source":"service_map","filters":["env:prod","datacenter:dc1"],"service":"master-db"}],"request_type":"topology"}],"title":"env: prod, datacenter:dc1, service: master-db","title_align":"left","title_size":"16","type":"topology_map"},"layout":{"height":4,"width":3,"x":5,"y":5},"id":535064910123530}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -44,11 +44,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/9d4363b2-7508-11ee-86ac-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/75fe2c0e-8310-11ee-898e-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"9d4363b2-7508-11ee-86ac-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackTopologyMap-local-1698439033","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackTopologyMap-local-1698439033","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"requests":[{"query":[{"data_source":"service_map","filters":["env:prod","datacenter:dc1"],"service":"master-db"}],"request_type":"topology"}],"title":"env: prod, datacenter:dc1, service: master-db","title_align":"left","title_size":"16","type":"topology_map"},"layout":{"height":4,"width":3,"x":5,"y":5},"id":4934070150198104}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"75fe2c0e-8310-11ee-898e-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackTopologyMap-local-1699981720","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackTopologyMap-local-1699981720","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"requests":[{"query":[{"data_source":"service_map","filters":["env:prod","datacenter:dc1"],"service":"master-db"}],"request_type":"topology"}],"title":"env: prod, datacenter:dc1, service: master-db","title_align":"left","title_size":"16","type":"topology_map"},"layout":{"height":4,"width":3,"x":5,"y":5},"id":535064910123530}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -61,11 +61,11 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/9d4363b2-7508-11ee-86ac-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/75fe2c0e-8310-11ee-898e-da7ad0900002 method: GET response: body: | - {"data":{"type":"powerpack","id":"9d4363b2-7508-11ee-86ac-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackTopologyMap-local-1698439033","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackTopologyMap-local-1698439033","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"requests":[{"query":[{"data_source":"service_map","filters":["env:prod","datacenter:dc1"],"service":"master-db"}],"request_type":"topology"}],"title":"env: prod, datacenter:dc1, service: master-db","title_align":"left","title_size":"16","type":"topology_map"},"layout":{"height":4,"width":3,"x":5,"y":5},"id":4934070150198104}]}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} + {"data":{"type":"powerpack","id":"75fe2c0e-8310-11ee-898e-da7ad0900002","attributes":{"name":"tf-TestAccDatadogPowerpackTopologyMap-local-1699981720","description":"Created using the Datadog provider in Terraform","group_widget":{"definition":{"layout_type":"ordered","title":"tf-TestAccDatadogPowerpackTopologyMap-local-1699981720","type":"group","widgets":[{"definition":{"custom_links":[{"label":"Test Custom Link label","link":"https://app.datadoghq.com/dashboard/lists"},{"is_hidden":true,"link":"https://app.datadoghq.com/dashboard/lists","override_label":"logs"}],"requests":[{"query":[{"data_source":"service_map","filters":["env:prod","datacenter:dc1"],"service":"master-db"}],"request_type":"topology"}],"title":"env: prod, datacenter:dc1, service: master-db","title_align":"left","title_size":"16","type":"topology_map"},"layout":{"height":4,"width":3,"x":5,"y":5},"id":535064910123530}]},"layout":{"height":1,"width":12,"x":0,"y":0}},"template_variables":[{"defaults":["defaults"],"name":"datacenter"}],"tags":["tag:foo1"]},"relationships":{"author":{"data":{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0"}}}},"included":[{"type":"users","id":"3ad549bf-eba0-11e9-a77a-0705486660d0","attributes":{"name":null,"email":"frog@datadoghq.com"}}]} headers: Content-Type: - application/json @@ -78,7 +78,7 @@ interactions: headers: Accept: - '*/*' - url: https://api.datadoghq.com/api/v2/powerpacks/9d4363b2-7508-11ee-86ac-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/75fe2c0e-8310-11ee-898e-da7ad0900002 method: DELETE response: body: "" @@ -94,10 +94,10 @@ interactions: headers: Accept: - application/json - url: https://api.datadoghq.com/api/v2/powerpacks/9d4363b2-7508-11ee-86ac-da7ad0900002 + url: https://api.datadoghq.com/api/v2/powerpacks/75fe2c0e-8310-11ee-898e-da7ad0900002 method: GET response: - body: '{"errors":["Powerpack with ID 9d4363b2-7508-11ee-86ac-da7ad0900002 not found"]}' + body: '{"errors":["Powerpack with ID 75fe2c0e-8310-11ee-898e-da7ad0900002 not found"]}' headers: Content-Type: - application/json diff --git a/datadog/tests/provider_test.go b/datadog/tests/provider_test.go index 3a22f8e46a..3ab4994169 100644 --- a/datadog/tests/provider_test.go +++ b/datadog/tests/provider_test.go @@ -143,7 +143,6 @@ var testFiles2EndpointTags = map[string]string{ "tests/resource_datadog_powerpack_iframe_test": "powerpacks", "tests/resource_datadog_powerpack_image_test": "powerpacks", "tests/resource_datadog_powerpack_free_text_test": "powerpacks", - "tests/resource_datadog_powerpack_manage_status_test": "powerpacks", "tests/resource_datadog_powerpack_heatmap_test": "powerpacks", "tests/resource_datadog_powerpack_hostmap_test": "powerpacks", "tests/resource_datadog_powerpack_list_stream_test": "powerpacks", @@ -155,7 +154,6 @@ var testFiles2EndpointTags = map[string]string{ "tests/resource_datadog_powerpack_scatterplot_test": "powerpacks", "tests/resource_datadog_powerpack_servicemap_test": "powerpacks", "tests/resource_datadog_powerpack_slo_test": "powerpacks", - "tests/resource_datadog_powerpack_trace_service_test": "powerpacks", "tests/resource_datadog_powerpack_toplist_test": "powerpacks", "tests/resource_datadog_powerpack_topology_map_test": "powerpacks", "tests/resource_datadog_powerpack_trace_service_test": "powerpacks", diff --git a/docs/resources/powerpack.md b/docs/resources/powerpack.md index b233b0d46e..088d5dbefe 100644 --- a/docs/resources/powerpack.md +++ b/docs/resources/powerpack.md @@ -18,6 +18,7 @@ Provides a Datadog powerpack resource. This can be used to create and manage Dat ### Optional - `description` (String) The description of the powerpack. +- `layout` (Block List, Max: 1) The layout of the powerpack on a free-form dashboard. (see [below for nested schema](#nestedblock--layout)) - `live_span` (String) The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. - `name` (String) The name for the powerpack. - `show_title` (Boolean) Whether or not title should be displayed in the powerpack. @@ -29,6 +30,21 @@ Provides a Datadog powerpack resource. This can be used to create and manage Dat - `id` (String) The ID of this resource. + +### Nested Schema for `layout` + +Required: + +- `height` (Number) The height of the widget. +- `width` (Number) The width of the widget. +- `x` (Number) The position of the widget on the x (horizontal) axis. Should be greater than or equal to 0. +- `y` (Number) The position of the widget on the y (vertical) axis. Should be greater than or equal to 0. + +Optional: + +- `is_column_break` (Boolean) Whether the widget should be the first one on the second column in high density or not. Only for the new dashboard layout and only one widget in the dashboard should have this property set to `true`. + + ### Nested Schema for `template_variables`