"Migrating from Monaco to Terraform for management zone: CD_APIGW"

CD_APIGW
Patryk Gudalewicz 2023-03-01 19:08:00 +01:00
parent 397d673aef
commit 9493f8cee6
7 changed files with 1502 additions and 0 deletions

View File

@ -0,0 +1,26 @@
# DEFINE dynatrace_alerting.CD_APIGW_INT.id = vu9U3hXa3q0AAAABABhidWlsdGluOmFsZXJ0aW5nLnByb2ZpbGUABnRlbmFudAAGdGVuYW50ACRlMTM3YjQ3Mi00NDIzLTNlNTUtODZlMi04M2MxZTRjOGVkNmO-71TeFdrerQ
data "dynatrace_management_zone" "CD_APIGW_INT"{ name="CD_APIGW" }
resource "dynatrace_alerting" "CD_APIGW_INT" {
name = "CD_APIGW INT"
management_zone = data.dynatrace_management_zone.CD_APIGW_INT.id
rules {
rule {
delay_in_minutes = 0
include_mode = "INCLUDE_ALL"
severity_level = "AVAILABILITY"
tags = [ "Component:APIGW-WS", "Environment:INT" ]
}
rule {
delay_in_minutes = 10
include_mode = "INCLUDE_ALL"
severity_level = "CUSTOM_ALERT"
tags = [ "Component:APIGW-WS", "Environment:INT" ]
}
rule {
delay_in_minutes = 30
include_mode = "INCLUDE_ALL"
severity_level = "RESOURCE_CONTENTION"
tags = [ "Component:APIGW-WS", "Environment:INT" ]
}
}
}

View File

@ -0,0 +1,26 @@
# DEFINE dynatrace_alerting.CD_APIGW_PROD.id = vu9U3hXa3q0AAAABABhidWlsdGluOmFsZXJ0aW5nLnByb2ZpbGUABnRlbmFudAAGdGVuYW50ACRhMGM0YmFiOS0wM2Y3LTNmOWQtYWUwNy1lZjlmYTU2NGY5OWO-71TeFdrerQ
data "dynatrace_management_zone" "CD_APIGW_PROD"{ name="CD_APIGW" }
resource "dynatrace_alerting" "CD_APIGW_PROD" {
name = "CD_APIGW PROD"
management_zone = data.dynatrace_management_zone.CD_APIGW_PROD.id
rules {
rule {
delay_in_minutes = 0
include_mode = "INCLUDE_ALL"
severity_level = "AVAILABILITY"
tags = [ "Component:APIGW-WS", "Environment:PROD" ]
}
rule {
delay_in_minutes = 10
include_mode = "INCLUDE_ALL"
severity_level = "CUSTOM_ALERT"
tags = [ "Component:APIGW-WS", "Environment:PROD" ]
}
rule {
delay_in_minutes = 30
include_mode = "INCLUDE_ALL"
severity_level = "RESOURCE_CONTENTION"
tags = [ "Component:APIGW-WS", "Environment:PROD" ]
}
}
}

View File

@ -0,0 +1,336 @@
# DEFINE dynatrace_dashboard.CD_APIGW_Application_Server_Overview.id = ac8a5eeb-cd85-4f93-a202-202c13b642ab
data "dynatrace_management_zone" "CD_APIGW_Application_Server_Overview"{ name="CD_analytics-user-data-service" }
resource "dynatrace_dashboard" "CD_APIGW_Application_Server_Overview" {
dashboard_metadata {
name = "CD_APIGW Application Server Overview"
owner = "Ignacio.Goldman@partner.bmwgroup.com"
preset = true
shared = true
tags = [ "Template" ]
}
tile {
name = "Custom chart"
configured = true
tile_type = "CUSTOM_CHARTING"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 304
left = 38
top = 38
width = 1216
}
filter_config {
type = "MIXED"
custom_name = "Response time, Throughput and Number of Errors"
default_name = "Custom chart"
chart_config {
type = "TIMESERIES"
legend = true
result_metadata {
config {
custom_color = "#008cdb"
key = "nullbuiltin:service.requestCount.total|NONE|TOTAL|BAR|SERVICE"
last_modified = 1595275720776
}
config {
custom_color = "#b4e5f9"
key = "nullbuiltin:service.response.time|AVG|TOTAL|LINE|SERVICE"
last_modified = 1595275686773
}
config {
custom_color = "#ef651f"
key = "nullbuiltin:service.errors.total.count|NONE|TOTAL|BAR|SERVICE"
last_modified = 1595275955999
}
}
series {
type = "LINE"
aggregation = "AVG"
aggregation_rate = "TOTAL"
entity_type = "SERVICE"
metric = "builtin:service.response.time"
# sort_ascending = false
# sort_column = false
}
series {
type = "BAR"
aggregation = "NONE"
aggregation_rate = "TOTAL"
entity_type = "SERVICE"
metric = "builtin:service.requestCount.total"
# sort_ascending = false
# sort_column = false
}
series {
type = "BAR"
aggregation = "NONE"
aggregation_rate = "TOTAL"
entity_type = "SERVICE"
metric = "builtin:service.errors.total.count"
# sort_ascending = false
sort_column = true
}
}
}
}
tile {
name = "Custom chart"
configured = true
tile_type = "CUSTOM_CHARTING"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 304
left = 38
top = 342
width = 304
}
filter_config {
type = "MIXED"
custom_name = "Failure rate (HTTP 4xx/5xx errors)"
default_name = "Custom chart"
chart_config {
type = "TIMESERIES"
legend = true
result_metadata {
config {
custom_color = "#ef651f"
key = "nullbuiltin:service.errors.fivexx.rate|AVG|TOTAL|BAR|SERVICE"
last_modified = 1595276148986
}
}
series {
type = "BAR"
aggregation = "AVG"
aggregation_rate = "TOTAL"
entity_type = "SERVICE"
metric = "builtin:service.errors.fourxx.rate"
# sort_ascending = false
# sort_column = false
}
series {
type = "BAR"
aggregation = "AVG"
aggregation_rate = "TOTAL"
entity_type = "SERVICE"
metric = "builtin:service.errors.fivexx.rate"
# sort_ascending = false
sort_column = true
}
}
}
}
tile {
name = "Markdown"
configured = true
markdown =<<-EOT
[Top Web Requests](https://vse69518.sprint.dynatracelabs.com/#topglobalwebrequests;gtf=l_2_HOURS;gf=all)
[Top database statements](https://vse69518.sprint.dynatracelabs.com/#topdbstatements;gtf=l_2_HOURS;gf=all)
[Overview of captured exceptions](https://vse69518.sprint.dynatracelabs.com/#exceptionsoverview;gtf=l_2_HOURS;gf=all)
EOT
tile_type = "MARKDOWN"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 114
left = 38
top = 684
width = 304
}
}
tile {
name = "Host health"
chart_visible = true
configured = true
tile_type = "HOSTS"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 304
left = 646
top = 342
width = 304
}
}
tile {
name = "Service health"
chart_visible = true
configured = true
tile_type = "SERVICES"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 304
left = 342
top = 342
width = 304
}
}
tile {
name = "Database health"
chart_visible = true
configured = true
tile_type = "DATABASES_OVERVIEW"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 304
left = 950
top = 342
width = 304
}
}
tile {
name = "Problems"
configured = true
tile_type = "OPEN_PROBLEMS"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 152
left = 1102
top = 646
width = 152
}
}
tile {
name = "Markdown"
configured = true
markdown = "Response time (line, left axis), number of requests (blue bars, right axis) and number of errors (red bars, right axis)."
tile_type = "MARKDOWN"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 304
left = 1254
top = 38
width = 152
}
}
tile {
name = "Custom chart"
configured = true
tile_type = "CUSTOM_CHARTING"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 304
left = 38
top = 836
width = 1216
}
filter_config {
type = "MIXED"
custom_name = "Response time, Throughput and Number of Errors"
default_name = "Custom chart"
chart_config {
type = "TIMESERIES"
legend = true
result_metadata {
config {
custom_color = "#008cdb"
key = "nullbuiltin:service.response.time|AVG|TOTAL|LINE|SERVICE"
last_modified = 1613393764720
}
config {
custom_color = "#7c38a1"
key = "SERVICE-B906ECBFB2BD723B¦SERVICE»SERVICE-B906ECBFB2BD723B»truebuiltin:service.response.time|AVG|TOTAL|LINE|SERVICE"
last_modified = 1613393828759
}
config {
custom_color = "#debbf3"
key = "nullbuiltin:service.requestCount.total|NONE|TOTAL|BAR|SERVICE"
last_modified = 1613393762483
}
config {
custom_color = "#ff0000"
key = "SERVICE-B906ECBFB2BD723B¦SERVICE»SERVICE-B906ECBFB2BD723B»truebuiltin:service.errors.total.count|NONE|TOTAL|BAR|SERVICE"
last_modified = 1613393834140
}
config {
custom_color = "#ff0000"
key = "nullbuiltin:service.errors.total.count|NONE|TOTAL|BAR|SERVICE"
last_modified = 1613393770444
}
}
series {
type = "LINE"
aggregation = "AVG"
aggregation_rate = "TOTAL"
entity_type = "SERVICE"
metric = "builtin:service.response.time"
# sort_ascending = false
# sort_column = false
dimension {
name = "dt.entity.service"
entity_dimension = true
id = "0"
}
}
series {
type = "BAR"
aggregation = "NONE"
aggregation_rate = "TOTAL"
entity_type = "SERVICE"
metric = "builtin:service.requestCount.total"
# sort_ascending = false
# sort_column = false
dimension {
name = "dt.entity.service"
entity_dimension = true
id = "0"
}
}
series {
type = "BAR"
aggregation = "NONE"
aggregation_rate = "TOTAL"
entity_type = "SERVICE"
metric = "builtin:service.errors.total.count"
# sort_ascending = false
sort_column = true
dimension {
name = "dt.entity.service"
entity_dimension = true
id = "0"
}
}
}
filters {
filter {
entity_type = "SERVICE"
match {
key = "SPECIFIC_ENTITIES"
values = [ "SERVICE-B906ECBFB2BD723B" ]
}
}
}
}
}
tile {
name = "RouterService"
configured = true
tile_type = "HEADER"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 38
left = 38
top = 798
width = 304
}
}
}

View File

@ -0,0 +1,333 @@
# DEFINE dynatrace_dashboard.CD_APIGW_INT.id = 038bb8d8-9845-4383-af9e-6314ef851476
data "dynatrace_management_zone" "CD_APIGW_INT"{ name="CD_APIGW" }
resource "dynatrace_dashboard" "CD_APIGW_INT" {
dashboard_metadata {
name = "CD_APIGW INT"
owner = "Ignacio.Goldman@partner.bmwgroup.com"
# preset = false
shared = true
tags = [ "APIGW" ]
filter {
timeframe = "-24h to now"
}
}
tile {
name = "Custom chart"
configured = true
tile_type = "CUSTOM_CHARTING"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 304
left = 38
top = 228
width = 1064
}
filter_config {
type = "MIXED"
custom_name = "Failure rate (HTTP 4xx/5xx errors)"
default_name = "Custom chart"
chart_config {
type = "TIMESERIES"
legend = true
result_metadata {
config {
custom_color = "#ff0000"
key = "nullbuiltin:service.errors.fivexx.rate|AVG|TOTAL|BAR|SERVICE"
last_modified = 1617956393463
}
config {
custom_color = "#fff29a"
key = "nullbuiltin:service.errors.fourxx.rate|AVG|TOTAL|BAR|SERVICE"
last_modified = 1617956441725
}
}
series {
type = "BAR"
aggregation = "AVG"
aggregation_rate = "TOTAL"
entity_type = "SERVICE"
metric = "builtin:service.errors.fourxx.rate"
# sort_ascending = false
# sort_column = false
}
series {
type = "BAR"
aggregation = "AVG"
aggregation_rate = "TOTAL"
entity_type = "SERVICE"
metric = "builtin:service.errors.fivexx.rate"
# sort_ascending = false
sort_column = true
}
}
filters {
filter {
entity_type = "SERVICE"
match {
key = "AUTO_TAGS"
values = [ "Component:APIGW", "Environment:INT" ]
}
}
}
}
}
tile {
name = "Problems"
configured = true
tile_type = "OPEN_PROBLEMS"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 152
left = 950
top = 38
width = 152
}
filter {
management_zone {
name = "CD_APIGW"
id = data.dynatrace_management_zone.CD_APIGW_INT.id
}
}
}
tile {
name = "Overall Health"
configured = true
tile_type = "HEADER"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 38
left = 38
top = 0
width = 1064
}
}
tile {
name = "Markdown"
configured = true
markdown =<<-EOT
---
EOT
tile_type = "MARKDOWN"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 38
left = 38
top = 532
width = 1064
}
}
tile {
name = "Custom chart"
configured = true
tile_type = "CUSTOM_CHARTING"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 304
left = 38
top = 570
width = 1064
}
filter_config {
type = "MIXED"
custom_name = "Response time, Request Count and Number of Errors"
default_name = "Custom chart"
chart_config {
type = "TIMESERIES"
legend = true
result_metadata {
config {
custom_color = "#008cdb"
key = "nullbuiltin:service.requestCount.total|NONE|TOTAL|BAR|SERVICE"
last_modified = 1595275720776
}
config {
custom_color = "#b4e5f9"
key = "nullbuiltin:service.response.time|AVG|TOTAL|LINE|SERVICE"
last_modified = 1595275686773
}
config {
custom_color = "#ef651f"
key = "nullbuiltin:service.errors.total.count|NONE|TOTAL|BAR|SERVICE"
last_modified = 1595275955999
}
}
series {
type = "LINE"
aggregation = "AVG"
aggregation_rate = "TOTAL"
entity_type = "SERVICE"
metric = "builtin:service.response.time"
# sort_ascending = false
# sort_column = false
}
series {
type = "BAR"
aggregation = "NONE"
aggregation_rate = "TOTAL"
entity_type = "SERVICE"
metric = "builtin:service.requestCount.total"
# sort_ascending = false
# sort_column = false
}
series {
type = "BAR"
aggregation = "NONE"
aggregation_rate = "TOTAL"
entity_type = "SERVICE"
metric = "builtin:service.errors.total.count"
# sort_ascending = false
sort_column = true
}
}
filters {
filter {
entity_type = "SERVICE"
match {
key = "AUTO_TAGS"
values = [ "Component:APIGW", "Environment:INT" ]
}
}
}
}
}
tile {
name = "Markdown"
configured = true
markdown =<<-EOT
---
EOT
tile_type = "MARKDOWN"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 38
left = 38
top = 190
width = 1064
}
}
tile {
name = ""
chart_visible = true
configured = true
tile_type = "DATABASES_OVERVIEW"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 152
left = 646
top = 38
width = 190
}
filter_config {
type = "DATABASE"
custom_name = "Databases"
default_name = "Databases"
chart_config {
type = "TIMESERIES"
legend = true
}
filters {
filter {
entity_type = "DATABASE"
match {
key = "AUTO_TAGS"
values = [ "Component:APIGW", "Environment:INT" ]
}
}
}
}
}
tile {
name = ""
chart_visible = true
configured = true
tile_type = "SERVICES"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 152
left = 342
top = 38
width = 190
}
filter_config {
type = "SERVICE"
custom_name = "Services"
default_name = "Services"
chart_config {
type = "TIMESERIES"
legend = true
}
filters {
filter {
entity_type = "SERVICE"
match {
key = "AUTO_TAGS"
values = [ "Component:APIGW", "Environment:INT" ]
}
}
}
}
}
tile {
name = ""
chart_visible = true
configured = true
tile_type = "HOSTS"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 152
left = 38
top = 38
width = 190
}
filter_config {
type = "HOST"
custom_name = "Hosts"
default_name = "Hosts"
chart_config {
type = "TIMESERIES"
legend = true
}
filters {
filter {
entity_type = "HOST"
match {
key = "AUTO_TAGS"
values = [ "Component:APIGW", "Environment:INT" ]
}
}
}
}
}
}
# DEFINE dynatrace_dashboard_sharing.CD_APIGW_INT.id = 038bb8d8-9845-4383-af9e-6314ef851476
resource "dynatrace_dashboard_sharing" "CD_APIGW_INT" {
enabled = true
dashboard_id = dynatrace_dashboard.CD_APIGW_INT.id
# preset = false
permissions {
permission {
type = "ALL"
level = "VIEW"
}
}
}

View File

@ -0,0 +1,333 @@
# DEFINE dynatrace_dashboard.CD_APIGW_TEST.id = 6b99e077-9add-4e7b-b40e-04fd9d7a9f4e
data "dynatrace_management_zone" "CD_APIGW_TEST"{ name="CD_APIGW" }
resource "dynatrace_dashboard" "CD_APIGW_TEST" {
dashboard_metadata {
name = "CD_APIGW TEST"
owner = "Ignacio.Goldman@partner.bmwgroup.com"
# preset = false
shared = true
tags = [ "APIGW" ]
filter {
timeframe = "-24h to now"
}
}
tile {
name = "Custom chart"
configured = true
tile_type = "CUSTOM_CHARTING"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 304
left = 38
top = 228
width = 1064
}
filter_config {
type = "MIXED"
custom_name = "Failure rate (HTTP 4xx/5xx errors)"
default_name = "Custom chart"
chart_config {
type = "TIMESERIES"
legend = true
result_metadata {
config {
custom_color = "#ff0000"
key = "nullbuiltin:service.errors.fivexx.rate|AVG|TOTAL|BAR|SERVICE"
last_modified = 1617956393463
}
config {
custom_color = "#fff29a"
key = "nullbuiltin:service.errors.fourxx.rate|AVG|TOTAL|BAR|SERVICE"
last_modified = 1617956441725
}
}
series {
type = "BAR"
aggregation = "AVG"
aggregation_rate = "TOTAL"
entity_type = "SERVICE"
metric = "builtin:service.errors.fourxx.rate"
# sort_ascending = false
# sort_column = false
}
series {
type = "BAR"
aggregation = "AVG"
aggregation_rate = "TOTAL"
entity_type = "SERVICE"
metric = "builtin:service.errors.fivexx.rate"
# sort_ascending = false
sort_column = true
}
}
filters {
filter {
entity_type = "SERVICE"
match {
key = "AUTO_TAGS"
values = [ "Component:APIGW", "Environment:TEST" ]
}
}
}
}
}
tile {
name = "Problems"
configured = true
tile_type = "OPEN_PROBLEMS"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 152
left = 950
top = 38
width = 152
}
filter {
management_zone {
name = "CD_APIGW"
id = data.dynatrace_management_zone.CD_APIGW_TEST.id
}
}
}
tile {
name = "Overall Health"
configured = true
tile_type = "HEADER"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 38
left = 38
top = 0
width = 1064
}
}
tile {
name = "Markdown"
configured = true
markdown =<<-EOT
---
EOT
tile_type = "MARKDOWN"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 38
left = 38
top = 532
width = 1064
}
}
tile {
name = "Custom chart"
configured = true
tile_type = "CUSTOM_CHARTING"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 304
left = 38
top = 570
width = 1064
}
filter_config {
type = "MIXED"
custom_name = "Response time, Request Count and Number of Errors"
default_name = "Custom chart"
chart_config {
type = "TIMESERIES"
legend = true
result_metadata {
config {
custom_color = "#008cdb"
key = "nullbuiltin:service.requestCount.total|NONE|TOTAL|BAR|SERVICE"
last_modified = 1595275720776
}
config {
custom_color = "#b4e5f9"
key = "nullbuiltin:service.response.time|AVG|TOTAL|LINE|SERVICE"
last_modified = 1595275686773
}
config {
custom_color = "#ef651f"
key = "nullbuiltin:service.errors.total.count|NONE|TOTAL|BAR|SERVICE"
last_modified = 1595275955999
}
}
series {
type = "LINE"
aggregation = "AVG"
aggregation_rate = "TOTAL"
entity_type = "SERVICE"
metric = "builtin:service.response.time"
# sort_ascending = false
# sort_column = false
}
series {
type = "BAR"
aggregation = "NONE"
aggregation_rate = "TOTAL"
entity_type = "SERVICE"
metric = "builtin:service.requestCount.total"
# sort_ascending = false
# sort_column = false
}
series {
type = "BAR"
aggregation = "NONE"
aggregation_rate = "TOTAL"
entity_type = "SERVICE"
metric = "builtin:service.errors.total.count"
# sort_ascending = false
sort_column = true
}
}
filters {
filter {
entity_type = "SERVICE"
match {
key = "AUTO_TAGS"
values = [ "Component:APIGW", "Environment:TEST" ]
}
}
}
}
}
tile {
name = "Markdown"
configured = true
markdown =<<-EOT
---
EOT
tile_type = "MARKDOWN"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 38
left = 38
top = 190
width = 1064
}
}
tile {
name = ""
chart_visible = true
configured = true
tile_type = "DATABASES_OVERVIEW"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 152
left = 646
top = 38
width = 190
}
filter_config {
type = "DATABASE"
custom_name = "Databases"
default_name = "Databases"
chart_config {
type = "TIMESERIES"
legend = true
}
filters {
filter {
entity_type = "DATABASE"
match {
key = "AUTO_TAGS"
values = [ "Component:APIGW", "Environment:TEST" ]
}
}
}
}
}
tile {
name = ""
chart_visible = true
configured = true
tile_type = "SERVICES"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 152
left = 342
top = 38
width = 190
}
filter_config {
type = "SERVICE"
custom_name = "Services"
default_name = "Services"
chart_config {
type = "TIMESERIES"
legend = true
}
filters {
filter {
entity_type = "SERVICE"
match {
key = "AUTO_TAGS"
values = [ "Component:APIGW", "Environment:TEST" ]
}
}
}
}
}
tile {
name = ""
chart_visible = true
configured = true
tile_type = "HOSTS"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 152
left = 38
top = 38
width = 190
}
filter_config {
type = "HOST"
custom_name = "Hosts"
default_name = "Hosts"
chart_config {
type = "TIMESERIES"
legend = true
}
filters {
filter {
entity_type = "HOST"
match {
key = "AUTO_TAGS"
values = [ "Component:APIGW", "Environment:TEST" ]
}
}
}
}
}
}
# DEFINE dynatrace_dashboard_sharing.CD_APIGW_TEST.id = 6b99e077-9add-4e7b-b40e-04fd9d7a9f4e
resource "dynatrace_dashboard_sharing" "CD_APIGW_TEST" {
enabled = true
dashboard_id = dynatrace_dashboard.CD_APIGW_TEST.id
# preset = false
permissions {
permission {
type = "ALL"
level = "VIEW"
}
}
}

View File

@ -0,0 +1,216 @@
# DEFINE dynatrace_dashboard.CD_APIGW_Webserver_Overview.id = 7ff9f94a-e623-4bf8-a830-701a07e13e54
data "dynatrace_management_zone" "CD_APIGW_Webserver_Overview"{ name="CD_APIGW" }
resource "dynatrace_dashboard" "CD_APIGW_Webserver_Overview" {
dashboard_metadata {
name = "CD_APIGW Webserver Overview"
owner = "Ignacio.Goldman@partner.bmwgroup.com"
preset = true
shared = true
}
tile {
name = "Custom chart"
configured = true
tile_type = "CUSTOM_CHARTING"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 494
left = 0
top = 0
width = 988
}
filter_config {
type = "MIXED"
custom_name = "Total Response time and Response count"
default_name = "Custom chart"
chart_config {
type = "TIMESERIES"
legend = true
result_metadata {
config {
custom_color = "#00ff00"
key = "null¦Dimension»200»falsecalc:service.api_gw_byhttpstatus|NONE|TOTAL|BAR|SERVICE|SERVICE¿¿¿Dimensionɵfalse"
last_modified = 1610972474646
}
config {
custom_color = "#ff0000"
key = "null¦Dimension»500»falsecalc:service.api_gw_byhttpstatus|NONE|TOTAL|BAR|SERVICE|SERVICE¿¿¿Dimensionɵfalse"
last_modified = 1610972483074
}
}
series {
type = "BAR"
aggregation = "NONE"
aggregation_rate = "TOTAL"
entity_type = "SERVICE"
metric = "calc:service.api_gw_byhttpstatus"
# sort_ascending = false
# sort_column = false
dimension {
name = "Dimension"
# entity_dimension = false
id = "1"
}
}
series {
type = "LINE"
aggregation = "PERCENTILE"
aggregation_rate = "TOTAL"
entity_type = "SERVICE"
metric = "builtin:service.response.time"
percentile = 95
# sort_ascending = false
# sort_column = false
}
series {
type = "LINE"
aggregation = "AVG"
aggregation_rate = "TOTAL"
entity_type = "SERVICE"
metric = "builtin:service.response.time"
# sort_ascending = false
# sort_column = false
}
}
}
}
tile {
name = "Custom chart"
configured = true
tile_type = "CUSTOM_CHARTING"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 494
left = 988
top = 0
width = 456
}
filter_config {
type = "MIXED"
custom_name = "http Response Code Distribution "
default_name = "Custom chart"
chart_config {
type = "PIE"
legend = true
result_metadata {
config {
custom_color = "#00ff00"
key = "null¦Dimension»200»falsecalc:service.api_gw_byhttpstatus|NONE|TOTAL|BAR|SERVICE"
last_modified = 1610972583848
}
config {
custom_color = "#00ff00"
key = "null¦Dimension»200»falsecalc:service.api_gw_byhttpstatus|NONE|TOTAL|BAR|SERVICE|SERVICE¿¿¿Dimensionɵfalse"
last_modified = 1610972474646
}
config {
custom_color = "#ff0000"
key = "null¦Dimension»500»falsecalc:service.api_gw_byhttpstatus|NONE|TOTAL|BAR|SERVICE|SERVICE¿¿¿Dimensionɵfalse"
last_modified = 1610972483074
}
}
series {
type = "BAR"
aggregation = "NONE"
aggregation_rate = "TOTAL"
entity_type = "SERVICE"
metric = "calc:service.api_gw_byhttpstatus"
# sort_ascending = false
sort_column = true
dimension {
name = "Dimension"
# entity_dimension = false
id = "1"
}
}
}
}
}
tile {
name = "Problems"
configured = true
tile_type = "OPEN_PROBLEMS"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 152
left = 1292
top = 494
width = 152
}
}
tile {
name = ""
chart_visible = true
configured = true
tile_type = "SERVICES"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 190
left = 912
top = 494
width = 190
}
filter_config {
type = "SERVICE"
custom_name = "Services"
default_name = "Services"
chart_config {
type = "TIMESERIES"
legend = true
}
filters {
filter {
entity_type = "SERVICE"
match {
key = "NAME"
values = [ "int-api" ]
}
match {
key = "SERVICE_TYPE"
values = [ "1" ]
}
}
}
}
}
tile {
name = ""
chart_visible = true
configured = true
tile_type = "HOSTS"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 190
left = 1102
top = 494
width = 190
}
filter_config {
type = "HOST"
custom_name = "Hosts"
default_name = "Hosts"
chart_config {
type = "TIMESERIES"
legend = true
}
filters {
filter {
entity_type = "HOST"
match {
key = "NAME"
values = [ "li" ]
}
}
}
}
}
}

View File

@ -0,0 +1,232 @@
# DEFINE dynatrace_management_zone.CD_APIGW.id = -4304321345446423873
resource "dynatrace_management_zone" "CD_APIGW" {
name = "CD_APIGW"
rules {
type = "SERVICE"
enabled = true
propagation_types = [ "SERVICE_TO_HOST_LIKE", "SERVICE_TO_PROCESS_GROUP_LIKE" ]
conditions {
key {
type = "STATIC"
attribute = "SERVICE_NAME"
}
string {
case_sensitive = true
negate = true
operator = "CONTAINS"
value = "HealthResource"
}
}
conditions {
key {
type = "STATIC"
attribute = "SERVICE_NAME"
}
string {
case_sensitive = true
negate = true
operator = "CONTAINS"
value = "PingResource"
}
}
conditions {
key {
type = "STATIC"
attribute = "SERVICE_NAME"
}
string {
case_sensitive = true
negate = true
operator = "CONTAINS"
value = "PrometheusResource"
}
}
conditions {
key {
type = "STATIC"
attribute = "SERVICE_TAGS"
}
tag {
# negate = false
operator = "EQUALS"
value {
context = "CONTEXTLESS"
key = "Component"
value = "APIGW-APP"
}
}
}
}
rules {
type = "SERVICE"
enabled = true
propagation_types = [ "SERVICE_TO_HOST_LIKE", "SERVICE_TO_PROCESS_GROUP_LIKE" ]
conditions {
key {
type = "STATIC"
attribute = "SERVICE_NAME"
}
string {
case_sensitive = true
negate = true
operator = "CONTAINS"
value = "HealthResource"
}
}
conditions {
key {
type = "STATIC"
attribute = "SERVICE_NAME"
}
string {
case_sensitive = true
negate = true
operator = "CONTAINS"
value = "PingResource"
}
}
conditions {
key {
type = "STATIC"
attribute = "SERVICE_NAME"
}
string {
case_sensitive = true
negate = true
operator = "CONTAINS"
value = "PrometheusResource"
}
}
conditions {
key {
type = "STATIC"
attribute = "SERVICE_TAGS"
}
tag {
# negate = false
operator = "EQUALS"
value {
context = "CONTEXTLESS"
key = "Component"
value = "APIGW-WS"
}
}
}
}
rules {
type = "SERVICE"
enabled = true
propagation_types = [ "SERVICE_TO_HOST_LIKE", "SERVICE_TO_PROCESS_GROUP_LIKE" ]
conditions {
key {
type = "STATIC"
attribute = "SERVICE_NAME"
}
string {
case_sensitive = true
negate = true
operator = "CONTAINS"
value = "HealthResource"
}
}
conditions {
key {
type = "STATIC"
attribute = "SERVICE_NAME"
}
string {
case_sensitive = true
negate = true
operator = "CONTAINS"
value = "PingResource"
}
}
conditions {
key {
type = "STATIC"
attribute = "SERVICE_NAME"
}
string {
case_sensitive = true
negate = true
operator = "CONTAINS"
value = "PrometheusResource"
}
}
conditions {
key {
type = "STATIC"
attribute = "SERVICE_TAGS"
}
tag {
# negate = false
operator = "EQUALS"
value {
context = "CONTEXTLESS"
key = "Component"
value = "Service Gateway Legacy"
}
}
}
}
rules {
type = "PROCESS_GROUP"
enabled = true
propagation_types = [ "PROCESS_GROUP_TO_HOST" ]
conditions {
key {
type = "STATIC"
attribute = "PROCESS_GROUP_TAGS"
}
tag {
# negate = false
operator = "EQUALS"
value {
context = "CONTEXTLESS"
key = "Component"
value = "APIGW-APP"
}
}
}
}
rules {
type = "PROCESS_GROUP"
enabled = true
propagation_types = [ "PROCESS_GROUP_TO_HOST" ]
conditions {
key {
type = "STATIC"
attribute = "PROCESS_GROUP_TAGS"
}
tag {
# negate = false
operator = "EQUALS"
value {
context = "CONTEXTLESS"
key = "Component"
value = "APIGW-WS"
}
}
}
}
rules {
type = "PROCESS_GROUP"
enabled = true
propagation_types = [ "PROCESS_GROUP_TO_HOST" ]
conditions {
key {
type = "STATIC"
attribute = "PROCESS_GROUP_TAGS"
}
tag {
# negate = false
operator = "EQUALS"
value {
context = "CONTEXTLESS"
key = "Component"
value = "Service Gateway Legacy"
}
}
}
}
}