Compare commits
6 Commits
CD_tol-tss
...
CD_App-Rep
| Author | SHA1 | Date |
|---|---|---|
|
|
d578f066d3 | |
|
|
e21704c7f1 | |
|
|
ac482bd049 | |
|
|
47cf48d53d | |
|
|
4f1dd7f32d | |
|
|
41376ab874 |
|
|
@ -0,0 +1,38 @@
|
|||
# DEFINE dynatrace_alerting.CD_App-Repository_INT.id = vu9U3hXa3q0AAAABABhidWlsdGluOmFsZXJ0aW5nLnByb2ZpbGUABnRlbmFudAAGdGVuYW50ACQ2NTlkZDA3My1mODczLTRmNWYtOGU3NC02MDA1YTIxNDEyMzO-71TeFdrerQ
|
||||
data "dynatrace_management_zone" "CD_App-Repository_INT"{ name="CD_App-Repository" }
|
||||
resource "dynatrace_alerting" "CD_App-Repository_INT" {
|
||||
name = "CD_App-Repository INT"
|
||||
management_zone = data.dynatrace_management_zone.CD_App-Repository_INT.id
|
||||
rules {
|
||||
rule {
|
||||
delay_in_minutes = 0
|
||||
include_mode = "INCLUDE_ALL"
|
||||
severity_level = "AVAILABILITY"
|
||||
tags = [ "Environment:INT", "Component:App-Repository" ]
|
||||
}
|
||||
rule {
|
||||
delay_in_minutes = 10
|
||||
include_mode = "INCLUDE_ALL"
|
||||
severity_level = "CUSTOM_ALERT"
|
||||
tags = [ "Environment:INT", "Component:App-Repository" ]
|
||||
}
|
||||
rule {
|
||||
delay_in_minutes = 10
|
||||
include_mode = "INCLUDE_ALL"
|
||||
severity_level = "ERRORS"
|
||||
tags = [ "Environment:INT", "Component:App-Repository" ]
|
||||
}
|
||||
rule {
|
||||
delay_in_minutes = 30
|
||||
include_mode = "INCLUDE_ALL"
|
||||
severity_level = "PERFORMANCE"
|
||||
tags = [ "Environment:INT", "Component:App-Repository" ]
|
||||
}
|
||||
rule {
|
||||
delay_in_minutes = 30
|
||||
include_mode = "INCLUDE_ALL"
|
||||
severity_level = "RESOURCE_CONTENTION"
|
||||
tags = [ "Environment:INT", "Component:App-Repository" ]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,294 @@
|
|||
# DEFINE dynatrace_dashboard.CD_App-Repository_INT.id = 3901a992-de89-4b48-8a67-1c131e43044c
|
||||
data "dynatrace_management_zone" "CD_App-Repository_INT"{ name="CD_App-Repository" }
|
||||
resource "dynatrace_dashboard" "CD_App-Repository_INT" {
|
||||
dashboard_metadata {
|
||||
name = "CD_App-Repository INT"
|
||||
owner = "Ignacio.Goldman@partner.bmwgroup.com"
|
||||
preset = true
|
||||
shared = true
|
||||
tags = [ "App Repository" ]
|
||||
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:App Repository", "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_App-Repository"
|
||||
id = data.dynatrace_management_zone.CD_App-Repository_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:App Repository", "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:App Repository", "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:App Repository", "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:App Repository", "Environment:INT" ]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,294 @@
|
|||
# DEFINE dynatrace_dashboard.CD_App-Repository_TEST.id = 1a899104-3a24-4139-9dd5-1183962c7387
|
||||
data "dynatrace_management_zone" "CD_App-Repository_TEST"{ name="CD_App-Repository" }
|
||||
resource "dynatrace_dashboard" "CD_App-Repository_TEST" {
|
||||
dashboard_metadata {
|
||||
name = "CD_App-Repository TEST"
|
||||
owner = "Ignacio.Goldman@partner.bmwgroup.com"
|
||||
preset = true
|
||||
shared = true
|
||||
tags = [ "App Repository" ]
|
||||
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:App Repository", "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_App-Repository"
|
||||
id = data.dynatrace_management_zone.CD_App-Repository_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:App Repository", "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:App Repository", "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:App Repository", "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:App Repository", "Environment:TEST" ]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,95 @@
|
|||
# DEFINE dynatrace_management_zone.CD_App-Repository.id = -2120668581520820048
|
||||
resource "dynatrace_management_zone" "CD_App-Repository" {
|
||||
name = "CD_App-Repository"
|
||||
rules {
|
||||
type = "CLOUD_APPLICATION"
|
||||
enabled = true
|
||||
conditions {
|
||||
key {
|
||||
type = "STATIC"
|
||||
attribute = "CLOUD_APPLICATION_NAME"
|
||||
}
|
||||
string {
|
||||
case_sensitive = true
|
||||
# negate = false
|
||||
operator = "CONTAINS"
|
||||
value = "App Repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
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 = "App Repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
rules {
|
||||
type = "HOST"
|
||||
enabled = true
|
||||
conditions {
|
||||
key {
|
||||
type = "STATIC"
|
||||
attribute = "HOST_TAGS"
|
||||
}
|
||||
tag {
|
||||
# negate = false
|
||||
operator = "EQUALS"
|
||||
value {
|
||||
context = "CONTEXTLESS"
|
||||
key = "Component"
|
||||
value = "App Repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
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 = "App Repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
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 = "App Repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
# DEFINE dynatrace_alerting.CD_App-Repository_PROD.id = vu9U3hXa3q0AAAABABhidWlsdGluOmFsZXJ0aW5nLnByb2ZpbGUABnRlbmFudAAGdGVuYW50ACQxYmZhZWEzMC03MzIwLTRhMzMtOTFlMC02OGY5ZTk4YmQ2ZjS-71TeFdrerQ
|
||||
data "dynatrace_management_zone" "CD_App-Repository_PROD"{ name="CD_App-Repository" }
|
||||
resource "dynatrace_alerting" "CD_App-Repository_PROD" {
|
||||
name = "CD_App-Repository PROD"
|
||||
management_zone = data.dynatrace_management_zone.CD_App-Repository_PROD.id
|
||||
rules {
|
||||
rule {
|
||||
delay_in_minutes = 0
|
||||
include_mode = "INCLUDE_ALL"
|
||||
severity_level = "AVAILABILITY"
|
||||
tags = [ "Component:App-Repository", "Environment:PROD" ]
|
||||
}
|
||||
rule {
|
||||
delay_in_minutes = 10
|
||||
include_mode = "INCLUDE_ALL"
|
||||
severity_level = "CUSTOM_ALERT"
|
||||
tags = [ "Component:App-Repository", "Environment:PROD" ]
|
||||
}
|
||||
rule {
|
||||
delay_in_minutes = 10
|
||||
include_mode = "INCLUDE_ALL"
|
||||
severity_level = "ERRORS"
|
||||
tags = [ "Component:App-Repository", "Environment:PROD" ]
|
||||
}
|
||||
rule {
|
||||
delay_in_minutes = 30
|
||||
include_mode = "INCLUDE_ALL"
|
||||
severity_level = "PERFORMANCE"
|
||||
tags = [ "Component:App-Repository", "Environment:PROD" ]
|
||||
}
|
||||
rule {
|
||||
delay_in_minutes = 30
|
||||
include_mode = "INCLUDE_ALL"
|
||||
severity_level = "RESOURCE_CONTENTION"
|
||||
tags = [ "Component:App-Repository", "Environment:PROD" ]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,294 @@
|
|||
# DEFINE dynatrace_dashboard.CD_App-Repository_PROD.id = e72a4aeb-0ef4-42a8-81e9-36051882a1c0
|
||||
data "dynatrace_management_zone" "CD_App-Repository_PROD"{ name="CD_App-Repository" }
|
||||
resource "dynatrace_dashboard" "CD_App-Repository_PROD" {
|
||||
dashboard_metadata {
|
||||
name = "CD_App-Repository PROD"
|
||||
owner = "Ignacio.Goldman@partner.bmwgroup.com"
|
||||
preset = true
|
||||
shared = true
|
||||
tags = [ "App Repository" ]
|
||||
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:App Repository", "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_App-Repository"
|
||||
id = data.dynatrace_management_zone.CD_App-Repository_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:App Repository", "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:App Repository", "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:App Repository", "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:App Repository", "Environment:PROD" ]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,95 @@
|
|||
# DEFINE dynatrace_management_zone.CD_App-Repository.id = 81258101462808240
|
||||
resource "dynatrace_management_zone" "CD_App-Repository" {
|
||||
name = "CD_App-Repository"
|
||||
rules {
|
||||
type = "CLOUD_APPLICATION"
|
||||
enabled = true
|
||||
conditions {
|
||||
key {
|
||||
type = "STATIC"
|
||||
attribute = "CLOUD_APPLICATION_NAME"
|
||||
}
|
||||
string {
|
||||
case_sensitive = true
|
||||
# negate = false
|
||||
operator = "CONTAINS"
|
||||
value = "App Repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
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 = "App Repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
rules {
|
||||
type = "HOST"
|
||||
enabled = true
|
||||
conditions {
|
||||
key {
|
||||
type = "STATIC"
|
||||
attribute = "HOST_TAGS"
|
||||
}
|
||||
tag {
|
||||
# negate = false
|
||||
operator = "EQUALS"
|
||||
value {
|
||||
context = "CONTEXTLESS"
|
||||
key = "Component"
|
||||
value = "App Repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
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 = "App Repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
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 = "App Repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,357 @@
|
|||
# DEFINE dynatrace_dashboard.CD_App-Repository_INT.id = 70cb53d9-c450-4649-bcb4-5dd5c00b6ff8
|
||||
data "dynatrace_management_zone" "CD_App-Repository_INT"{ name="CD_App-Repository" }
|
||||
resource "dynatrace_dashboard" "CD_App-Repository_INT" {
|
||||
dashboard_metadata {
|
||||
name = "CD_App-Repository INT"
|
||||
owner = "Ignacio.Goldman@partner.bmwgroup.com"
|
||||
preset = true
|
||||
shared = true
|
||||
tags = [ "CD_App-Repository" ]
|
||||
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_App-Repository"
|
||||
id = data.dynatrace_management_zone.CD_App-Repository_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_App-Repository"
|
||||
id = data.dynatrace_management_zone.CD_App-Repository_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_App-Repository"
|
||||
id = data.dynatrace_management_zone.CD_App-Repository_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_App-Repository"
|
||||
id = data.dynatrace_management_zone.CD_App-Repository_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_App-Repository"
|
||||
id = data.dynatrace_management_zone.CD_App-Repository_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_App-Repository"
|
||||
id = data.dynatrace_management_zone.CD_App-Repository_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_App-Repository"
|
||||
id = data.dynatrace_management_zone.CD_App-Repository_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" ]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,357 @@
|
|||
# DEFINE dynatrace_dashboard.CD_App-Repository_TEST.id = dd6e1fda-8885-4b70-a114-ac9b2e88dcc3
|
||||
data "dynatrace_management_zone" "CD_App-Repository_TEST"{ name="CD_App-Repository" }
|
||||
resource "dynatrace_dashboard" "CD_App-Repository_TEST" {
|
||||
dashboard_metadata {
|
||||
name = "CD_App-Repository TEST"
|
||||
owner = "Ignacio.Goldman@partner.bmwgroup.com"
|
||||
preset = true
|
||||
shared = true
|
||||
tags = [ "CD_App-Repository" ]
|
||||
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_App-Repository"
|
||||
id = data.dynatrace_management_zone.CD_App-Repository_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_App-Repository"
|
||||
id = data.dynatrace_management_zone.CD_App-Repository_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_App-Repository"
|
||||
id = data.dynatrace_management_zone.CD_App-Repository_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_App-Repository"
|
||||
id = data.dynatrace_management_zone.CD_App-Repository_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_App-Repository"
|
||||
id = data.dynatrace_management_zone.CD_App-Repository_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_App-Repository"
|
||||
id = data.dynatrace_management_zone.CD_App-Repository_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_App-Repository"
|
||||
id = data.dynatrace_management_zone.CD_App-Repository_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" ]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,95 @@
|
|||
# DEFINE dynatrace_management_zone.CD_App-Repository.id = -5832239230952805724
|
||||
resource "dynatrace_management_zone" "CD_App-Repository" {
|
||||
name = "CD_App-Repository"
|
||||
rules {
|
||||
type = "CLOUD_APPLICATION"
|
||||
enabled = true
|
||||
conditions {
|
||||
key {
|
||||
type = "STATIC"
|
||||
attribute = "CLOUD_APPLICATION_NAME"
|
||||
}
|
||||
string {
|
||||
case_sensitive = true
|
||||
# negate = false
|
||||
operator = "CONTAINS"
|
||||
value = "App Repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
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 = "App Repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
rules {
|
||||
type = "HOST"
|
||||
enabled = true
|
||||
conditions {
|
||||
key {
|
||||
type = "STATIC"
|
||||
attribute = "HOST_TAGS"
|
||||
}
|
||||
tag {
|
||||
# negate = false
|
||||
operator = "EQUALS"
|
||||
value {
|
||||
context = "CONTEXTLESS"
|
||||
key = "Component"
|
||||
value = "App Repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
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 = "App Repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
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 = "App Repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,321 @@
|
|||
# DEFINE dynatrace_dashboard.CD_App-Repository_PROD.id = 7ddf05d0-9cb3-431a-bf24-5fc620aa42a8
|
||||
data "dynatrace_management_zone" "CD_App-Repository_PROD"{ name="CD_App-Repository" }
|
||||
resource "dynatrace_dashboard" "CD_App-Repository_PROD" {
|
||||
dashboard_metadata {
|
||||
name = "CD_App-Repository PROD"
|
||||
owner = "Ignacio.Goldman@partner.bmwgroup.com"
|
||||
preset = true
|
||||
shared = true
|
||||
tags = [ "App Repository" ]
|
||||
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:App Repository", "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_App-Repository"
|
||||
id = data.dynatrace_management_zone.CD_App-Repository_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:App Repository", "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:App Repository", "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:App Repository", "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:App Repository", "Environment:PROD" ]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,95 @@
|
|||
# DEFINE dynatrace_management_zone.CD_App-Repository.id = 2107206930322242750
|
||||
resource "dynatrace_management_zone" "CD_App-Repository" {
|
||||
name = "CD_App-Repository"
|
||||
rules {
|
||||
type = "CLOUD_APPLICATION"
|
||||
enabled = true
|
||||
conditions {
|
||||
key {
|
||||
type = "STATIC"
|
||||
attribute = "CLOUD_APPLICATION_NAME"
|
||||
}
|
||||
string {
|
||||
case_sensitive = true
|
||||
# negate = false
|
||||
operator = "CONTAINS"
|
||||
value = "App Repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
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 = "App Repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
rules {
|
||||
type = "HOST"
|
||||
enabled = true
|
||||
conditions {
|
||||
key {
|
||||
type = "STATIC"
|
||||
attribute = "HOST_TAGS"
|
||||
}
|
||||
tag {
|
||||
# negate = false
|
||||
operator = "EQUALS"
|
||||
value {
|
||||
context = "CONTEXTLESS"
|
||||
key = "Component"
|
||||
value = "App Repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
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 = "App Repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
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 = "App Repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,321 @@
|
|||
# DEFINE dynatrace_dashboard.CD_App-Repository_INT.id = 21d86b09-249b-475c-abe6-3b1bbc779e58
|
||||
data "dynatrace_management_zone" "CD_App-Repository_INT"{ name="CD_App-Repository" }
|
||||
resource "dynatrace_dashboard" "CD_App-Repository_INT" {
|
||||
dashboard_metadata {
|
||||
name = "CD_App-Repository INT"
|
||||
owner = "Ignacio.Goldman@partner.bmwgroup.com"
|
||||
preset = true
|
||||
shared = true
|
||||
tags = [ "App Repository" ]
|
||||
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:App Repository", "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_App-Repository"
|
||||
id = data.dynatrace_management_zone.CD_App-Repository_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:App Repository", "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:App Repository", "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:App Repository", "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:App Repository", "Environment:INT" ]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,321 @@
|
|||
# DEFINE dynatrace_dashboard.CD_App-Repository_TEST.id = ce078d57-c241-45f9-ad64-b7da89219aba
|
||||
data "dynatrace_management_zone" "CD_App-Repository_TEST"{ name="CD_App-Repository" }
|
||||
resource "dynatrace_dashboard" "CD_App-Repository_TEST" {
|
||||
dashboard_metadata {
|
||||
name = "CD_App-Repository TEST"
|
||||
owner = "Ignacio.Goldman@partner.bmwgroup.com"
|
||||
preset = true
|
||||
shared = true
|
||||
tags = [ "App Repository" ]
|
||||
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:App Repository", "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_App-Repository"
|
||||
id = data.dynatrace_management_zone.CD_App-Repository_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:App Repository", "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:App Repository", "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:App Repository", "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:App Repository", "Environment:TEST" ]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,95 @@
|
|||
# DEFINE dynatrace_management_zone.CD_App-Repository.id = -3099936762819231244
|
||||
resource "dynatrace_management_zone" "CD_App-Repository" {
|
||||
name = "CD_App-Repository"
|
||||
rules {
|
||||
type = "CLOUD_APPLICATION"
|
||||
enabled = true
|
||||
conditions {
|
||||
key {
|
||||
type = "STATIC"
|
||||
attribute = "CLOUD_APPLICATION_NAME"
|
||||
}
|
||||
string {
|
||||
case_sensitive = true
|
||||
# negate = false
|
||||
operator = "CONTAINS"
|
||||
value = "App Repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
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 = "App Repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
rules {
|
||||
type = "HOST"
|
||||
enabled = true
|
||||
conditions {
|
||||
key {
|
||||
type = "STATIC"
|
||||
attribute = "HOST_TAGS"
|
||||
}
|
||||
tag {
|
||||
# negate = false
|
||||
operator = "EQUALS"
|
||||
value {
|
||||
context = "CONTEXTLESS"
|
||||
key = "Component"
|
||||
value = "App Repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
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 = "App Repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
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 = "App Repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,321 @@
|
|||
# DEFINE dynatrace_dashboard.CD_App-Repository_PROD.id = 1bb790c2-e5b3-4a27-b9d2-6317b22e851d
|
||||
data "dynatrace_management_zone" "CD_App-Repository_PROD"{ name="CD_App-Repository" }
|
||||
resource "dynatrace_dashboard" "CD_App-Repository_PROD" {
|
||||
dashboard_metadata {
|
||||
name = "CD_App-Repository PROD"
|
||||
owner = "Ignacio.Goldman@partner.bmwgroup.com"
|
||||
preset = true
|
||||
shared = true
|
||||
tags = [ "App Repository" ]
|
||||
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:App Repository", "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_App-Repository"
|
||||
id = data.dynatrace_management_zone.CD_App-Repository_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:App Repository", "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:App Repository", "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:App Repository", "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:App Repository", "Environment:PROD" ]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,95 @@
|
|||
# DEFINE dynatrace_management_zone.CD_App-Repository.id = 4000396772127609983
|
||||
resource "dynatrace_management_zone" "CD_App-Repository" {
|
||||
name = "CD_App-Repository"
|
||||
rules {
|
||||
type = "CLOUD_APPLICATION"
|
||||
enabled = true
|
||||
conditions {
|
||||
key {
|
||||
type = "STATIC"
|
||||
attribute = "CLOUD_APPLICATION_NAME"
|
||||
}
|
||||
string {
|
||||
case_sensitive = true
|
||||
# negate = false
|
||||
operator = "CONTAINS"
|
||||
value = "App Repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
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 = "App Repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
rules {
|
||||
type = "HOST"
|
||||
enabled = true
|
||||
conditions {
|
||||
key {
|
||||
type = "STATIC"
|
||||
attribute = "HOST_TAGS"
|
||||
}
|
||||
tag {
|
||||
# negate = false
|
||||
operator = "EQUALS"
|
||||
value {
|
||||
context = "CONTEXTLESS"
|
||||
key = "Component"
|
||||
value = "App Repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
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 = "App Repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
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 = "App Repository"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue