Merge pull request #337 in OPAPM/coco_apm_terraform_onboarding from CD_personal-data-service to master

* commit 'e713e3c1d51dff742fcd96b63ca120fc21eac9b6':
  "Migrating from Monaco to Terraform for management zone: CD_personal-data-service"
  "Migrating from Monaco to Terraform for management zone: CD_personal-data-service"
  "Migrating from Monaco to Terraform for management zone: CD_personal-data-service"
  "Migrating from Monaco to Terraform for management zone: CD_personal-data-service"
  "Migrating from Monaco to Terraform for management zone: CD_personal-data-service"
  "Migrating from Monaco to Terraform for management zone: CD_personal-data-service"
CD_TS-CMS
PATRYK GUDALEWICZ (ext.) 2023-03-01 20:23:32 +00:00
commit a99ba537be
19 changed files with 3933 additions and 0 deletions

View File

@ -0,0 +1,38 @@
# DEFINE dynatrace_alerting.CD_personal-data-service_INT.id = vu9U3hXa3q0AAAABABhidWlsdGluOmFsZXJ0aW5nLnByb2ZpbGUABnRlbmFudAAGdGVuYW50ACQxMWI4ODBjYy0wMTc0LTRhMmYtYjExOC1hNzk2NzlhN2YyMTG-71TeFdrerQ
data "dynatrace_management_zone" "CD_personal-data-service_INT"{ name="CD_personal-data-service" }
resource "dynatrace_alerting" "CD_personal-data-service_INT" {
name = "CD_personal-data-service INT"
management_zone = data.dynatrace_management_zone.CD_personal-data-service_INT.id
rules {
rule {
delay_in_minutes = 0
include_mode = "INCLUDE_ALL"
severity_level = "AVAILABILITY"
tags = [ "Component:personal-data-service", "Environment:INT" ]
}
rule {
delay_in_minutes = 10
include_mode = "INCLUDE_ALL"
severity_level = "CUSTOM_ALERT"
tags = [ "Component:personal-data-service", "Environment:INT" ]
}
rule {
delay_in_minutes = 10
include_mode = "INCLUDE_ALL"
severity_level = "ERRORS"
tags = [ "Component:personal-data-service", "Environment:INT" ]
}
rule {
delay_in_minutes = 30
include_mode = "INCLUDE_ALL"
severity_level = "PERFORMANCE"
tags = [ "Component:personal-data-service", "Environment:INT" ]
}
rule {
delay_in_minutes = 30
include_mode = "INCLUDE_ALL"
severity_level = "RESOURCE_CONTENTION"
tags = [ "Component:personal-data-service", "Environment:INT" ]
}
}
}

View File

@ -0,0 +1,294 @@
# DEFINE dynatrace_dashboard.CD_personal-data-service_INT.id = 19c683e7-467e-4f55-beb0-13c439612603
data "dynatrace_management_zone" "CD_personal-data-service_INT"{ name="CD_personal-data-service" }
resource "dynatrace_dashboard" "CD_personal-data-service_INT" {
dashboard_metadata {
name = "CD_personal-data-service INT"
owner = "Ignacio.Goldman@partner.bmwgroup.com"
preset = true
shared = true
tags = [ "personal-data-service" ]
filter {
timeframe = "-24h to now"
}
}
tile {
name = "Custom chart"
configured = true
tile_type = "CUSTOM_CHARTING"
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:personal-data-service", "Environment:INT" ]
}
}
}
}
}
tile {
name = "Problems"
configured = true
tile_type = "OPEN_PROBLEMS"
bounds {
height = 152
left = 950
top = 38
width = 152
}
filter {
management_zone {
name = "CD_personal-data-service"
id = data.dynatrace_management_zone.CD_personal-data-service_INT.id
}
}
}
tile {
name = "Overall Health"
configured = true
tile_type = "HEADER"
bounds {
height = 38
left = 38
top = 0
width = 1064
}
}
tile {
name = "Markdown"
configured = true
markdown =<<-EOT
---
EOT
tile_type = "MARKDOWN"
bounds {
height = 38
left = 38
top = 532
width = 1064
}
}
tile {
name = "Custom chart"
configured = true
tile_type = "CUSTOM_CHARTING"
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:personal-data-service", "Environment:INT" ]
}
}
}
}
}
tile {
name = "Markdown"
configured = true
markdown =<<-EOT
---
EOT
tile_type = "MARKDOWN"
bounds {
height = 38
left = 38
top = 190
width = 1064
}
}
tile {
name = ""
chart_visible = true
configured = true
tile_type = "DATABASES_OVERVIEW"
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:personal-data-service", "Environment:INT" ]
}
}
}
}
}
tile {
name = ""
chart_visible = true
configured = true
tile_type = "SERVICES"
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:personal-data-service", "Environment:INT" ]
}
}
}
}
}
tile {
name = ""
chart_visible = true
configured = true
tile_type = "HOSTS"
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:personal-data-service", "Environment:INT" ]
}
}
}
}
}
}

View File

@ -0,0 +1,294 @@
# DEFINE dynatrace_dashboard.CD_personal-data-service_TEST.id = ede4f08e-a2f7-4f57-b043-b70d5077fbe3
data "dynatrace_management_zone" "CD_personal-data-service_TEST"{ name="CD_personal-data-service" }
resource "dynatrace_dashboard" "CD_personal-data-service_TEST" {
dashboard_metadata {
name = "CD_personal-data-service TEST"
owner = "Ignacio.Goldman@partner.bmwgroup.com"
preset = true
shared = true
tags = [ "personal-data-service" ]
filter {
timeframe = "-24h to now"
}
}
tile {
name = "Custom chart"
configured = true
tile_type = "CUSTOM_CHARTING"
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:personal-data-service", "Environment:TEST" ]
}
}
}
}
}
tile {
name = "Problems"
configured = true
tile_type = "OPEN_PROBLEMS"
bounds {
height = 152
left = 950
top = 38
width = 152
}
filter {
management_zone {
name = "CD_personal-data-service"
id = data.dynatrace_management_zone.CD_personal-data-service_TEST.id
}
}
}
tile {
name = "Overall Health"
configured = true
tile_type = "HEADER"
bounds {
height = 38
left = 38
top = 0
width = 1064
}
}
tile {
name = "Markdown"
configured = true
markdown =<<-EOT
---
EOT
tile_type = "MARKDOWN"
bounds {
height = 38
left = 38
top = 532
width = 1064
}
}
tile {
name = "Custom chart"
configured = true
tile_type = "CUSTOM_CHARTING"
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:personal-data-service", "Environment:TEST" ]
}
}
}
}
}
tile {
name = "Markdown"
configured = true
markdown =<<-EOT
---
EOT
tile_type = "MARKDOWN"
bounds {
height = 38
left = 38
top = 190
width = 1064
}
}
tile {
name = ""
chart_visible = true
configured = true
tile_type = "DATABASES_OVERVIEW"
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:personal-data-service", "Environment:TEST" ]
}
}
}
}
}
tile {
name = ""
chart_visible = true
configured = true
tile_type = "SERVICES"
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:personal-data-service", "Environment:TEST" ]
}
}
}
}
}
tile {
name = ""
chart_visible = true
configured = true
tile_type = "HOSTS"
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:personal-data-service", "Environment:TEST" ]
}
}
}
}
}
}

View File

@ -0,0 +1,95 @@
# DEFINE dynatrace_management_zone.CD_personal-data-service.id = 4412459642691910744
resource "dynatrace_management_zone" "CD_personal-data-service" {
name = "CD_personal-data-service"
rules {
type = "CLOUD_APPLICATION"
enabled = true
conditions {
key {
type = "STATIC"
attribute = "CLOUD_APPLICATION_NAME"
}
string {
case_sensitive = true
# negate = false
operator = "CONTAINS"
value = "personal-data-service"
}
}
}
rules {
type = "CLOUD_APPLICATION_NAMESPACE"
enabled = true
conditions {
key {
type = "STATIC"
attribute = "CLOUD_APPLICATION_NAMESPACE_NAME"
}
string {
case_sensitive = true
# negate = false
operator = "CONTAINS"
value = "personal-data-service"
}
}
}
rules {
type = "HOST"
enabled = true
conditions {
key {
type = "STATIC"
attribute = "HOST_TAGS"
}
tag {
# negate = false
operator = "EQUALS"
value {
context = "CONTEXTLESS"
key = "Component"
value = "personal-data-service"
}
}
}
}
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 = "personal-data-service"
}
}
}
}
rules {
type = "SERVICE"
enabled = true
propagation_types = [ "SERVICE_TO_HOST_LIKE", "SERVICE_TO_PROCESS_GROUP_LIKE" ]
conditions {
key {
type = "STATIC"
attribute = "SERVICE_TAGS"
}
tag {
# negate = false
operator = "EQUALS"
value {
context = "CONTEXTLESS"
key = "Component"
value = "personal-data-service"
}
}
}
}
}

View File

@ -0,0 +1,38 @@
# DEFINE dynatrace_alerting.CD_personal-data-service_E2E.id = vu9U3hXa3q0AAAABABhidWlsdGluOmFsZXJ0aW5nLnByb2ZpbGUABnRlbmFudAAGdGVuYW50ACRlODk1YTFmMi1iYTM0LTQ3NGUtOTQ5Ny01ZmQzNjhmM2Y2YTW-71TeFdrerQ
data "dynatrace_management_zone" "CD_personal-data-service_E2E"{ name="CD_personal-data-service" }
resource "dynatrace_alerting" "CD_personal-data-service_E2E" {
name = "CD_personal-data-service E2E"
management_zone = data.dynatrace_management_zone.CD_personal-data-service_E2E.id
rules {
rule {
delay_in_minutes = 0
include_mode = "INCLUDE_ALL"
severity_level = "AVAILABILITY"
tags = [ "Component:personal-data-service", "Environment:E2E" ]
}
rule {
delay_in_minutes = 10
include_mode = "INCLUDE_ALL"
severity_level = "CUSTOM_ALERT"
tags = [ "Component:personal-data-service", "Environment:E2E" ]
}
rule {
delay_in_minutes = 10
include_mode = "INCLUDE_ALL"
severity_level = "ERRORS"
tags = [ "Component:personal-data-service", "Environment:E2E" ]
}
rule {
delay_in_minutes = 30
include_mode = "INCLUDE_ALL"
severity_level = "PERFORMANCE"
tags = [ "Component:personal-data-service", "Environment:E2E" ]
}
rule {
delay_in_minutes = 30
include_mode = "INCLUDE_ALL"
severity_level = "RESOURCE_CONTENTION"
tags = [ "Component:personal-data-service", "Environment:E2E" ]
}
}
}

View File

@ -0,0 +1,38 @@
# DEFINE dynatrace_alerting.CD_personal-data-service_PROD.id = vu9U3hXa3q0AAAABABhidWlsdGluOmFsZXJ0aW5nLnByb2ZpbGUABnRlbmFudAAGdGVuYW50ACRiNWQ3NTI5ZS0zZmM3LTRiMGYtYjc5MS1iMDFkZmRiNjFhYmO-71TeFdrerQ
data "dynatrace_management_zone" "CD_personal-data-service_PROD"{ name="CD_personal-data-service" }
resource "dynatrace_alerting" "CD_personal-data-service_PROD" {
name = "CD_personal-data-service PROD"
management_zone = data.dynatrace_management_zone.CD_personal-data-service_PROD.id
rules {
rule {
delay_in_minutes = 0
include_mode = "INCLUDE_ALL"
severity_level = "AVAILABILITY"
tags = [ "Component:personal-data-service", "Environment:PROD" ]
}
rule {
delay_in_minutes = 10
include_mode = "INCLUDE_ALL"
severity_level = "CUSTOM_ALERT"
tags = [ "Component:personal-data-service", "Environment:PROD" ]
}
rule {
delay_in_minutes = 10
include_mode = "INCLUDE_ALL"
severity_level = "ERRORS"
tags = [ "Component:personal-data-service", "Environment:PROD" ]
}
rule {
delay_in_minutes = 30
include_mode = "INCLUDE_ALL"
severity_level = "PERFORMANCE"
tags = [ "Component:personal-data-service", "Environment:PROD" ]
}
rule {
delay_in_minutes = 30
include_mode = "INCLUDE_ALL"
severity_level = "RESOURCE_CONTENTION"
tags = [ "Component:personal-data-service", "Environment:PROD" ]
}
}
}

View File

@ -0,0 +1,294 @@
# DEFINE dynatrace_dashboard.CD_personal-data-service_PROD.id = ceb1e42f-15d4-42cb-8df9-97a3bcf26a1f
data "dynatrace_management_zone" "CD_personal-data-service_PROD"{ name="CD_personal-data-service" }
resource "dynatrace_dashboard" "CD_personal-data-service_PROD" {
dashboard_metadata {
name = "CD_personal-data-service PROD"
owner = "Ignacio.Goldman@partner.bmwgroup.com"
preset = true
shared = true
tags = [ "personal-data-service" ]
filter {
timeframe = "-24h to now"
}
}
tile {
name = "Custom chart"
configured = true
tile_type = "CUSTOM_CHARTING"
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:personal-data-service", "Environment:PROD" ]
}
}
}
}
}
tile {
name = "Problems"
configured = true
tile_type = "OPEN_PROBLEMS"
bounds {
height = 152
left = 950
top = 38
width = 152
}
filter {
management_zone {
name = "CD_personal-data-service"
id = data.dynatrace_management_zone.CD_personal-data-service_PROD.id
}
}
}
tile {
name = "Overall Health"
configured = true
tile_type = "HEADER"
bounds {
height = 38
left = 38
top = 0
width = 1064
}
}
tile {
name = "Markdown"
configured = true
markdown =<<-EOT
---
EOT
tile_type = "MARKDOWN"
bounds {
height = 38
left = 38
top = 532
width = 1064
}
}
tile {
name = "Custom chart"
configured = true
tile_type = "CUSTOM_CHARTING"
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:personal-data-service", "Environment:PROD" ]
}
}
}
}
}
tile {
name = "Markdown"
configured = true
markdown =<<-EOT
---
EOT
tile_type = "MARKDOWN"
bounds {
height = 38
left = 38
top = 190
width = 1064
}
}
tile {
name = ""
chart_visible = true
configured = true
tile_type = "DATABASES_OVERVIEW"
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:personal-data-service", "Environment:PROD" ]
}
}
}
}
}
tile {
name = ""
chart_visible = true
configured = true
tile_type = "SERVICES"
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:personal-data-service", "Environment:PROD" ]
}
}
}
}
}
tile {
name = ""
chart_visible = true
configured = true
tile_type = "HOSTS"
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:personal-data-service", "Environment:PROD" ]
}
}
}
}
}
}

View File

@ -0,0 +1,95 @@
# DEFINE dynatrace_management_zone.CD_personal-data-service.id = 757718237479817676
resource "dynatrace_management_zone" "CD_personal-data-service" {
name = "CD_personal-data-service"
rules {
type = "CLOUD_APPLICATION"
enabled = true
conditions {
key {
type = "STATIC"
attribute = "CLOUD_APPLICATION_NAME"
}
string {
case_sensitive = true
# negate = false
operator = "CONTAINS"
value = "personal-data-service"
}
}
}
rules {
type = "CLOUD_APPLICATION_NAMESPACE"
enabled = true
conditions {
key {
type = "STATIC"
attribute = "CLOUD_APPLICATION_NAMESPACE_NAME"
}
string {
case_sensitive = true
# negate = false
operator = "CONTAINS"
value = "personal-data-service"
}
}
}
rules {
type = "HOST"
enabled = true
conditions {
key {
type = "STATIC"
attribute = "HOST_TAGS"
}
tag {
# negate = false
operator = "EQUALS"
value {
context = "CONTEXTLESS"
key = "Component"
value = "personal-data-service"
}
}
}
}
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 = "personal-data-service"
}
}
}
}
rules {
type = "SERVICE"
enabled = true
propagation_types = [ "SERVICE_TO_HOST_LIKE", "SERVICE_TO_PROCESS_GROUP_LIKE" ]
conditions {
key {
type = "STATIC"
attribute = "SERVICE_TAGS"
}
tag {
# negate = false
operator = "EQUALS"
value {
context = "CONTEXTLESS"
key = "Component"
value = "personal-data-service"
}
}
}
}
}

View File

@ -0,0 +1,357 @@
# DEFINE dynatrace_dashboard.CD_personal-data-service_INT.id = b5805db1-bbef-4de5-b83a-a750c643c073
data "dynatrace_management_zone" "CD_personal-data-service_INT"{ name="CD_personal-data-service" }
resource "dynatrace_dashboard" "CD_personal-data-service_INT" {
dashboard_metadata {
name = "CD_personal-data-service INT"
owner = "Ignacio.Goldman@partner.bmwgroup.com"
preset = true
shared = true
tags = [ "CD_personal-data-service" ]
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 {
management_zone {
name = "CD_personal-data-service"
id = data.dynatrace_management_zone.CD_personal-data-service_INT.id
}
}
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 = [ "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_personal-data-service"
id = data.dynatrace_management_zone.CD_personal-data-service_INT.id
}
}
}
tile {
name = "Overall Health"
configured = true
tile_type = "HEADER"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 38
left = 38
top = 0
width = 1064
}
filter {
management_zone {
name = "CD_personal-data-service"
id = data.dynatrace_management_zone.CD_personal-data-service_INT.id
}
}
}
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 {
management_zone {
name = "CD_personal-data-service"
id = data.dynatrace_management_zone.CD_personal-data-service_INT.id
}
}
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 = [ "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 {
management_zone {
name = "CD_personal-data-service"
id = data.dynatrace_management_zone.CD_personal-data-service_INT.id
}
}
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 = [ "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 {
management_zone {
name = "CD_personal-data-service"
id = data.dynatrace_management_zone.CD_personal-data-service_INT.id
}
}
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 = [ "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 {
management_zone {
name = "CD_personal-data-service"
id = data.dynatrace_management_zone.CD_personal-data-service_INT.id
}
}
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 = [ "Environment:INT" ]
}
}
}
}
}
}

View File

@ -0,0 +1,357 @@
# DEFINE dynatrace_dashboard.CD_personal-data-service_TEST.id = d0f9c619-2944-4509-953a-6c0ee459063b
data "dynatrace_management_zone" "CD_personal-data-service_TEST"{ name="CD_personal-data-service" }
resource "dynatrace_dashboard" "CD_personal-data-service_TEST" {
dashboard_metadata {
name = "CD_personal-data-service TEST"
owner = "Ignacio.Goldman@partner.bmwgroup.com"
preset = true
shared = true
tags = [ "CD_personal-data-service" ]
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 {
management_zone {
name = "CD_personal-data-service"
id = data.dynatrace_management_zone.CD_personal-data-service_TEST.id
}
}
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 = [ "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_personal-data-service"
id = data.dynatrace_management_zone.CD_personal-data-service_TEST.id
}
}
}
tile {
name = "Overall Health"
configured = true
tile_type = "HEADER"
unknowns = jsonencode({
"isAutoRefreshDisabled": false
})
bounds {
height = 38
left = 38
top = 0
width = 1064
}
filter {
management_zone {
name = "CD_personal-data-service"
id = data.dynatrace_management_zone.CD_personal-data-service_TEST.id
}
}
}
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 {
management_zone {
name = "CD_personal-data-service"
id = data.dynatrace_management_zone.CD_personal-data-service_TEST.id
}
}
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 = [ "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 {
management_zone {
name = "CD_personal-data-service"
id = data.dynatrace_management_zone.CD_personal-data-service_TEST.id
}
}
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 = [ "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 {
management_zone {
name = "CD_personal-data-service"
id = data.dynatrace_management_zone.CD_personal-data-service_TEST.id
}
}
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 = [ "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 {
management_zone {
name = "CD_personal-data-service"
id = data.dynatrace_management_zone.CD_personal-data-service_TEST.id
}
}
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 = [ "Environment:TEST" ]
}
}
}
}
}
}

View File

@ -0,0 +1,143 @@
# DEFINE dynatrace_management_zone.CD_personal-data-service.id = -2519211549619907546
resource "dynatrace_management_zone" "CD_personal-data-service" {
name = "CD_personal-data-service"
entity_selector_based_rule {
# enabled = false
selector = "type(HOST),tag('ms-id:personal-data-service')"
}
entity_selector_based_rule {
# enabled = false
selector = "type(HOST),tag('msid:personal-data-service')"
}
entity_selector_based_rule {
# enabled = false
selector = "type(SERVICE),databaseName.exists(),toRelationship.calls(type(SERVICE),tag('ms-id:personal-data-service'))"
}
entity_selector_based_rule {
enabled = true
selector = "type(HOST),tag(\"ms-id:personal-data-service\")"
}
entity_selector_based_rule {
# enabled = false
selector = "type(SERVICE),databaseName.exists(),toRelationship.calls(type(SERVICE),tag('msid:personal-data-service'))"
}
entity_selector_based_rule {
# enabled = false
selector = "type(PROCESS_GROUP_INSTANCE),tag('msid:personal-data-service')"
}
entity_selector_based_rule {
enabled = true
selector = "type(Service),tag(\"ms-id:personal-data-service\")"
}
entity_selector_based_rule {
# enabled = false
selector = "type(Service),tag('msid:personal-data-service')"
}
entity_selector_based_rule {
enabled = true
selector = "type(PROCESS_GROUP_INSTANCE),tag(\"ms-id:personal-data-service\")"
}
entity_selector_based_rule {
enabled = true
selector = "type(SERVICE),databaseName.exists(),toRelationship.calls(type(SERVICE),tag(\"ms-id:personal-data-service\"))"
}
entity_selector_based_rule {
# enabled = false
selector = "type(Service),tag('ms-id:personal-data-service')"
}
entity_selector_based_rule {
# enabled = false
selector = "type(PROCESS_GROUP_INSTANCE),tag('ms-id:personal-data-service')"
}
rules {
type = "CLOUD_APPLICATION"
# enabled = false
conditions {
key {
type = "STATIC"
attribute = "CLOUD_APPLICATION_NAME"
}
string {
case_sensitive = true
# negate = false
operator = "CONTAINS"
value = "personal-data-service"
}
}
}
rules {
type = "CLOUD_APPLICATION_NAMESPACE"
# enabled = false
conditions {
key {
type = "STATIC"
attribute = "CLOUD_APPLICATION_NAMESPACE_NAME"
}
string {
case_sensitive = true
# negate = false
operator = "CONTAINS"
value = "personal-data-service"
}
}
}
rules {
type = "HOST"
# enabled = false
conditions {
key {
type = "STATIC"
attribute = "HOST_TAGS"
}
tag {
# negate = false
operator = "EQUALS"
value {
context = "CONTEXTLESS"
key = "Component"
value = "personal-data-service"
}
}
}
}
rules {
type = "PROCESS_GROUP"
# enabled = false
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 = "personal-data-service"
}
}
}
}
rules {
type = "SERVICE"
# enabled = false
propagation_types = [ "SERVICE_TO_HOST_LIKE", "SERVICE_TO_PROCESS_GROUP_LIKE" ]
conditions {
key {
type = "STATIC"
attribute = "SERVICE_TAGS"
}
tag {
# negate = false
operator = "EQUALS"
value {
context = "CONTEXTLESS"
key = "Component"
value = "personal-data-service"
}
}
}
}
}

View File

@ -0,0 +1,321 @@
# DEFINE dynatrace_dashboard.CD_personal-data-service_E2E.id = 30010413-5f41-44a7-a069-4a9e3af63540
data "dynatrace_management_zone" "CD_personal-data-service_E2E"{ name="CD_personal-data-service" }
resource "dynatrace_dashboard" "CD_personal-data-service_E2E" {
dashboard_metadata {
name = "CD_personal-data-service E2E"
owner = "Ignacio.Goldman@partner.bmwgroup.com"
preset = true
shared = true
tags = [ "personal-data-service" ]
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:personal-data-service", "Environment:E2E" ]
}
}
}
}
}
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_personal-data-service"
id = data.dynatrace_management_zone.CD_personal-data-service_E2E.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:personal-data-service", "Environment:E2E" ]
}
}
}
}
}
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:personal-data-service", "Environment:E2E" ]
}
}
}
}
}
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:personal-data-service", "Environment:E2E" ]
}
}
}
}
}
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:personal-data-service", "Environment:E2E" ]
}
}
}
}
}
}

View File

@ -0,0 +1,321 @@
# DEFINE dynatrace_dashboard.CD_personal-data-service_PROD.id = 4a98f11d-24d8-4e86-8db8-33841bd5f284
data "dynatrace_management_zone" "CD_personal-data-service_PROD"{ name="CD_personal-data-service" }
resource "dynatrace_dashboard" "CD_personal-data-service_PROD" {
dashboard_metadata {
name = "CD_personal-data-service PROD"
owner = "Ignacio.Goldman@partner.bmwgroup.com"
preset = true
shared = true
tags = [ "personal-data-service" ]
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:personal-data-service", "Environment:PROD" ]
}
}
}
}
}
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_personal-data-service"
id = data.dynatrace_management_zone.CD_personal-data-service_PROD.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:personal-data-service", "Environment:PROD" ]
}
}
}
}
}
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:personal-data-service", "Environment:PROD" ]
}
}
}
}
}
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:personal-data-service", "Environment:PROD" ]
}
}
}
}
}
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:personal-data-service", "Environment:PROD" ]
}
}
}
}
}
}

View File

@ -0,0 +1,95 @@
# DEFINE dynatrace_management_zone.CD_personal-data-service.id = -5869798444572368149
resource "dynatrace_management_zone" "CD_personal-data-service" {
name = "CD_personal-data-service"
rules {
type = "CLOUD_APPLICATION"
enabled = true
conditions {
key {
type = "STATIC"
attribute = "CLOUD_APPLICATION_NAME"
}
string {
case_sensitive = true
# negate = false
operator = "CONTAINS"
value = "personal-data-service"
}
}
}
rules {
type = "CLOUD_APPLICATION_NAMESPACE"
enabled = true
conditions {
key {
type = "STATIC"
attribute = "CLOUD_APPLICATION_NAMESPACE_NAME"
}
string {
case_sensitive = true
# negate = false
operator = "CONTAINS"
value = "personal-data-service"
}
}
}
rules {
type = "HOST"
enabled = true
conditions {
key {
type = "STATIC"
attribute = "HOST_TAGS"
}
tag {
# negate = false
operator = "EQUALS"
value {
context = "CONTEXTLESS"
key = "Component"
value = "personal-data-service"
}
}
}
}
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 = "personal-data-service"
}
}
}
}
rules {
type = "SERVICE"
enabled = true
propagation_types = [ "SERVICE_TO_HOST_LIKE", "SERVICE_TO_PROCESS_GROUP_LIKE" ]
conditions {
key {
type = "STATIC"
attribute = "SERVICE_TAGS"
}
tag {
# negate = false
operator = "EQUALS"
value {
context = "CONTEXTLESS"
key = "Component"
value = "personal-data-service"
}
}
}
}
}

View File

@ -0,0 +1,321 @@
# DEFINE dynatrace_dashboard.CD_personal-data-service_INT.id = 0dfe8b52-39d0-439e-9e95-f79626ccdf5d
data "dynatrace_management_zone" "CD_personal-data-service_INT"{ name="CD_personal-data-service" }
resource "dynatrace_dashboard" "CD_personal-data-service_INT" {
dashboard_metadata {
name = "CD_personal-data-service INT"
owner = "Ignacio.Goldman@partner.bmwgroup.com"
preset = true
shared = true
tags = [ "personal-data-service" ]
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:personal-data-service", "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_personal-data-service"
id = data.dynatrace_management_zone.CD_personal-data-service_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:personal-data-service", "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:personal-data-service", "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:personal-data-service", "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:personal-data-service", "Environment:INT" ]
}
}
}
}
}
}

View File

@ -0,0 +1,321 @@
# DEFINE dynatrace_dashboard.CD_personal-data-service_TEST.id = cdbfc554-5b70-40de-a02a-f47ef7c49444
data "dynatrace_management_zone" "CD_personal-data-service_TEST"{ name="CD_personal-data-service" }
resource "dynatrace_dashboard" "CD_personal-data-service_TEST" {
dashboard_metadata {
name = "CD_personal-data-service TEST"
owner = "Ignacio.Goldman@partner.bmwgroup.com"
preset = true
shared = true
tags = [ "personal-data-service" ]
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:personal-data-service", "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_personal-data-service"
id = data.dynatrace_management_zone.CD_personal-data-service_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:personal-data-service", "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:personal-data-service", "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:personal-data-service", "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:personal-data-service", "Environment:TEST" ]
}
}
}
}
}
}

View File

@ -0,0 +1,95 @@
# DEFINE dynatrace_management_zone.CD_personal-data-service.id = 2262473511259369926
resource "dynatrace_management_zone" "CD_personal-data-service" {
name = "CD_personal-data-service"
rules {
type = "CLOUD_APPLICATION"
enabled = true
conditions {
key {
type = "STATIC"
attribute = "CLOUD_APPLICATION_NAME"
}
string {
case_sensitive = true
# negate = false
operator = "CONTAINS"
value = "personal-data-service"
}
}
}
rules {
type = "CLOUD_APPLICATION_NAMESPACE"
enabled = true
conditions {
key {
type = "STATIC"
attribute = "CLOUD_APPLICATION_NAMESPACE_NAME"
}
string {
case_sensitive = true
# negate = false
operator = "CONTAINS"
value = "personal-data-service"
}
}
}
rules {
type = "HOST"
enabled = true
conditions {
key {
type = "STATIC"
attribute = "HOST_TAGS"
}
tag {
# negate = false
operator = "EQUALS"
value {
context = "CONTEXTLESS"
key = "Component"
value = "personal-data-service"
}
}
}
}
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 = "personal-data-service"
}
}
}
}
rules {
type = "SERVICE"
enabled = true
propagation_types = [ "SERVICE_TO_HOST_LIKE", "SERVICE_TO_PROCESS_GROUP_LIKE" ]
conditions {
key {
type = "STATIC"
attribute = "SERVICE_TAGS"
}
tag {
# negate = false
operator = "EQUALS"
value {
context = "CONTEXTLESS"
key = "Component"
value = "personal-data-service"
}
}
}
}
}

View File

@ -0,0 +1,321 @@
# DEFINE dynatrace_dashboard.CD_personal-data-service_PROD.id = 230297b9-dd42-4f89-ba64-2a9fcb0e34db
data "dynatrace_management_zone" "CD_personal-data-service_PROD"{ name="CD_personal-data-service" }
resource "dynatrace_dashboard" "CD_personal-data-service_PROD" {
dashboard_metadata {
name = "CD_personal-data-service PROD"
owner = "Ignacio.Goldman@partner.bmwgroup.com"
preset = true
shared = true
tags = [ "personal-data-service" ]
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:personal-data-service", "Environment:PROD" ]
}
}
}
}
}
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_personal-data-service"
id = data.dynatrace_management_zone.CD_personal-data-service_PROD.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:personal-data-service", "Environment:PROD" ]
}
}
}
}
}
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:personal-data-service", "Environment:PROD" ]
}
}
}
}
}
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:personal-data-service", "Environment:PROD" ]
}
}
}
}
}
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:personal-data-service", "Environment:PROD" ]
}
}
}
}
}
}

View File

@ -0,0 +1,95 @@
# DEFINE dynatrace_management_zone.CD_personal-data-service.id = 3113327581285396496
resource "dynatrace_management_zone" "CD_personal-data-service" {
name = "CD_personal-data-service"
rules {
type = "CLOUD_APPLICATION"
enabled = true
conditions {
key {
type = "STATIC"
attribute = "CLOUD_APPLICATION_NAME"
}
string {
case_sensitive = true
# negate = false
operator = "CONTAINS"
value = "personal-data-service"
}
}
}
rules {
type = "CLOUD_APPLICATION_NAMESPACE"
enabled = true
conditions {
key {
type = "STATIC"
attribute = "CLOUD_APPLICATION_NAMESPACE_NAME"
}
string {
case_sensitive = true
# negate = false
operator = "CONTAINS"
value = "personal-data-service"
}
}
}
rules {
type = "HOST"
enabled = true
conditions {
key {
type = "STATIC"
attribute = "HOST_TAGS"
}
tag {
# negate = false
operator = "EQUALS"
value {
context = "CONTEXTLESS"
key = "Component"
value = "personal-data-service"
}
}
}
}
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 = "personal-data-service"
}
}
}
}
rules {
type = "SERVICE"
enabled = true
propagation_types = [ "SERVICE_TO_HOST_LIKE", "SERVICE_TO_PROCESS_GROUP_LIKE" ]
conditions {
key {
type = "STATIC"
attribute = "SERVICE_TAGS"
}
tag {
# negate = false
operator = "EQUALS"
value {
context = "CONTEXTLESS"
key = "Component"
value = "personal-data-service"
}
}
}
}
}