From bae88e2225200a8cbf72ea95505092ad98e38114 Mon Sep 17 00:00:00 2001 From: "Pedro Vieira (CTW)" Date: Tue, 18 Oct 2022 16:04:19 +0100 Subject: [PATCH 1/8] OPMAAS-2671 & INFOTAIN-30041: Add Gen2 AppStore SLOs Requests --- EMEA_PROD/slo/VCIS_GEN2_AppStore.tf | 33 ++++++++++++ EMEA_PROD/slo/VCIS_GEN2_AppStore_Requests.tf | 56 ++++++++++++++++++++ 2 files changed, 89 insertions(+) create mode 100644 EMEA_PROD/slo/VCIS_GEN2_AppStore.tf create mode 100644 EMEA_PROD/slo/VCIS_GEN2_AppStore_Requests.tf diff --git a/EMEA_PROD/slo/VCIS_GEN2_AppStore.tf b/EMEA_PROD/slo/VCIS_GEN2_AppStore.tf new file mode 100644 index 0000000..ac38a1b --- /dev/null +++ b/EMEA_PROD/slo/VCIS_GEN2_AppStore.tf @@ -0,0 +1,33 @@ +module ICES_-_FestiveModeAPI { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VCIS-GEN2 - AppStore" + + description = "AppStore" + + + + #entity selector object + filter = "type(\"SERVICE\"),entityName(\"server (/cdp/release/vehicle/appstore) - vcis-information - prod\"),tag(\"Environment:PROD\")" + + + #metric expression of the calculation as done in data explorer ui + metric_expression = "(100)*((1)-( builtin:service.errors.fivexx.rate:splitBy():avg:auto:sort(value(avg,descending)):limit(10))/( builtin:service.requestCount.total:splitBy():sum:auto:sort(value(sum,descending)):limit(10)))" + + + #if not set (removed) it's defaulted to "-1d" + timeframe = "-1d" + + + #currently the only possible value + evaluation = "AGGREGATE" + + #Target and warning percentage of the SLO as double + target = 98 + #if not set(removed) it's defaulted to 98 + warning = 99 + #if not set(removed) it's defaulted to 99 + +} diff --git a/EMEA_PROD/slo/VCIS_GEN2_AppStore_Requests.tf b/EMEA_PROD/slo/VCIS_GEN2_AppStore_Requests.tf new file mode 100644 index 0000000..9c0f4e3 --- /dev/null +++ b/EMEA_PROD/slo/VCIS_GEN2_AppStore_Requests.tf @@ -0,0 +1,56 @@ +module ICES_FestiveModeAPI_getFestival { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VCIS-GEN2 - AppStore Requests" + description = "Success rate of GEN2 AppStore" + + + #entity selector object + filter = "" + + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT + +(100)*((1)-(builtin:service.keyRequest.errors.fivexx.count:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"server (/cdp/release/vehicle/appstore) - vcis-information - prod~" + ), + tag(~"Environment:PROD~") + ) + ,entityName.in( + ~"/cdp/release/vehicle/appstore/servlet/manage~" + ~"/cdp/release/vehicle/appstore/servlet/start~", + ~"/cdp/release/vehicle/appstore/servlet/linkstoreimage~", + ~"/cdp/release/vehicle/appstore/servlet/ajaxReload~" + )"))))):splitBy()) + / + (builtin:service.keyRequest.count.server:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"server (/cdp/release/vehicle/appstore) - vcis-information - prod~" + ), + tag(~"Environment:PROD~") + ) + ,entityName.in( + ~"/cdp/release/vehicle/appstore/servlet/manage~", + ~"/cdp/release/vehicle/appstore/servlet/start~", + ~"/cdp/release/vehicle/appstore/servlet/linkstoreimage~", + ~"/cdp/release/vehicle/appstore/servlet/ajaxReload~" + )"))))):splitBy())) + +EOT + +#if not set (removed) it's defaulted to "-1d" +timeframe = "-1d" + +#currently the only possible value +evaluation = "AGGREGATE" + +#Target and warning percentage of the SLO as double +target = 98 #if not set(removed) it's defaulted to 98 +warning = 99 #if not set(removed) it's defaulted to 99 + +} From d97b389401aa998a6b0fa87c487a822e7a58af88 Mon Sep 17 00:00:00 2001 From: "Pedro Vieira (CTW)" Date: Tue, 18 Oct 2022 17:18:34 +0100 Subject: [PATCH 2/8] OPMAAS-2671 & INFOTAIN-30041: Add Gen2 ConnNav SLOs Requests and correct AppStore --- EMEA_PROD/slo/VCIS_GEN2_AppStore.tf | 2 +- EMEA_PROD/slo/VCIS_GEN2_AppStore_Requests.tf | 4 +- EMEA_PROD/slo/VCIS_GEN2_ConnNav.tf | 33 +++++++++++ EMEA_PROD/slo/VCIS_GEN2_ConnNav_Requests.tf | 58 ++++++++++++++++++++ 4 files changed, 94 insertions(+), 3 deletions(-) create mode 100644 EMEA_PROD/slo/VCIS_GEN2_ConnNav.tf create mode 100644 EMEA_PROD/slo/VCIS_GEN2_ConnNav_Requests.tf diff --git a/EMEA_PROD/slo/VCIS_GEN2_AppStore.tf b/EMEA_PROD/slo/VCIS_GEN2_AppStore.tf index ac38a1b..de251e5 100644 --- a/EMEA_PROD/slo/VCIS_GEN2_AppStore.tf +++ b/EMEA_PROD/slo/VCIS_GEN2_AppStore.tf @@ -1,4 +1,4 @@ -module ICES_-_FestiveModeAPI { +module VCIS_GEN2_AppStore { source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" diff --git a/EMEA_PROD/slo/VCIS_GEN2_AppStore_Requests.tf b/EMEA_PROD/slo/VCIS_GEN2_AppStore_Requests.tf index 9c0f4e3..b6a9c85 100644 --- a/EMEA_PROD/slo/VCIS_GEN2_AppStore_Requests.tf +++ b/EMEA_PROD/slo/VCIS_GEN2_AppStore_Requests.tf @@ -1,4 +1,4 @@ -module ICES_FestiveModeAPI_getFestival { +module VCIS_GEN2_AppStore_Requests { source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" @@ -21,7 +21,7 @@ module ICES_FestiveModeAPI_getFestival { tag(~"Environment:PROD~") ) ,entityName.in( - ~"/cdp/release/vehicle/appstore/servlet/manage~" + ~"/cdp/release/vehicle/appstore/servlet/manage~", ~"/cdp/release/vehicle/appstore/servlet/start~", ~"/cdp/release/vehicle/appstore/servlet/linkstoreimage~", ~"/cdp/release/vehicle/appstore/servlet/ajaxReload~" diff --git a/EMEA_PROD/slo/VCIS_GEN2_ConnNav.tf b/EMEA_PROD/slo/VCIS_GEN2_ConnNav.tf new file mode 100644 index 0000000..50e4357 --- /dev/null +++ b/EMEA_PROD/slo/VCIS_GEN2_ConnNav.tf @@ -0,0 +1,33 @@ +module VCIS_GEN2_ConnNav { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VCIS-GEN2 - ConnNav" + + description = "ConnNav" + + + + #entity selector object + filter = "type(\"SERVICE\"),entityName(\"server (/cdp/release/vehicle/connnav) - vcis-information - prod\"),tag(\"Environment:PROD\")" + + + #metric expression of the calculation as done in data explorer ui + metric_expression = "(100)*((1)-( builtin:service.errors.fivexx.rate:splitBy():avg:auto:sort(value(avg,descending)):limit(10))/( builtin:service.requestCount.total:splitBy():sum:auto:sort(value(sum,descending)):limit(10)))" + + + #if not set (removed) it's defaulted to "-1d" + timeframe = "-1d" + + + #currently the only possible value + evaluation = "AGGREGATE" + + #Target and warning percentage of the SLO as double + target = 98 + #if not set(removed) it's defaulted to 98 + warning = 99 + #if not set(removed) it's defaulted to 99 + +} diff --git a/EMEA_PROD/slo/VCIS_GEN2_ConnNav_Requests.tf b/EMEA_PROD/slo/VCIS_GEN2_ConnNav_Requests.tf new file mode 100644 index 0000000..f34a67d --- /dev/null +++ b/EMEA_PROD/slo/VCIS_GEN2_ConnNav_Requests.tf @@ -0,0 +1,58 @@ +module VCIS_GEN2_ConnNav_Requests { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VCIS-GEN2 - ConnNav Requests" + description = "Success rate of GEN2 ConnNav" + + + #entity selector object + filter = "" + + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT + +(100)*((1)-(builtin:service.keyRequest.errors.fivexx.count:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"server (/cdp/release/vehicle/connnav) - vcis-information - prod~" + ), + tag(~"Environment:PROD~") + ) + ,entityName.in( + ~"/cdp/release/vehicle/connnav/servlet/getLocalSearch~", + ~"/cdp/release/vehicle/connnav/servlet/getLocalSuggest~", + ~"/cdp/release/vehicle/connnav/servlet/setClickTracking~", + ~"/cdp/release/vehicle/connnav/servlet/navigateToCalendar~", + ~"/cdp/release/vehicle/connnav/servlet/resetVehicleData~" + )"))))):splitBy()) + / + (builtin:service.keyRequest.count.server:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"server (/cdp/release/vehicle/connnav) - vcis-information - prod~" + ), + tag(~"Environment:PROD~") + ) + ,entityName.in( + ~"/cdp/release/vehicle/connnav/servlet/getLocalSearch~", + ~"/cdp/release/vehicle/connnav/servlet/getLocalSuggest~", + ~"/cdp/release/vehicle/connnav/servlet/setClickTracking~", + ~"/cdp/release/vehicle/connnav/servlet/navigateToCalendar~", + ~"/cdp/release/vehicle/connnav/servlet/resetVehicleData~" + )"))))):splitBy())) + +EOT + +#if not set (removed) it's defaulted to "-1d" +timeframe = "-1d" + +#currently the only possible value +evaluation = "AGGREGATE" + +#Target and warning percentage of the SLO as double +target = 98 #if not set(removed) it's defaulted to 98 +warning = 99 #if not set(removed) it's defaulted to 99 + +} From e6eca56a7b2382861e3f44fae76a796f844e8c21 Mon Sep 17 00:00:00 2001 From: "Pedro Vieira (CTW)" Date: Tue, 18 Oct 2022 17:36:11 +0100 Subject: [PATCH 3/8] OPMAAS-2671 & INFOTAIN-30041: Add Gen2 News SLOs Requests --- EMEA_PROD/slo/VCIS_GEN2_News.tf | 33 +++++++++++++ EMEA_PROD/slo/VCIS_GEN2_News_Requests.tf | 60 ++++++++++++++++++++++++ NA_PROD/slo/VCIS_GEN2_News.tf | 33 +++++++++++++ NA_PROD/slo/VCIS_GEN2_News_Requests.tf | 54 +++++++++++++++++++++ 4 files changed, 180 insertions(+) create mode 100644 EMEA_PROD/slo/VCIS_GEN2_News.tf create mode 100644 EMEA_PROD/slo/VCIS_GEN2_News_Requests.tf create mode 100644 NA_PROD/slo/VCIS_GEN2_News.tf create mode 100644 NA_PROD/slo/VCIS_GEN2_News_Requests.tf diff --git a/EMEA_PROD/slo/VCIS_GEN2_News.tf b/EMEA_PROD/slo/VCIS_GEN2_News.tf new file mode 100644 index 0000000..3200e0a --- /dev/null +++ b/EMEA_PROD/slo/VCIS_GEN2_News.tf @@ -0,0 +1,33 @@ +module VCIS_GEN2_News { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VCIS-GEN2 - News" + + description = "News" + + + + #entity selector object + filter = "type(\"SERVICE\"),entityName(\"server (/cdp/release/vehicle/news) - vcis-information - prod\"),tag(\"Environment:PROD\")" + + + #metric expression of the calculation as done in data explorer ui + metric_expression = "(100)*((1)-( builtin:service.errors.fivexx.rate:splitBy():avg:auto:sort(value(avg,descending)):limit(10))/( builtin:service.requestCount.total:splitBy():sum:auto:sort(value(sum,descending)):limit(10)))" + + + #if not set (removed) it's defaulted to "-1d" + timeframe = "-1d" + + + #currently the only possible value + evaluation = "AGGREGATE" + + #Target and warning percentage of the SLO as double + target = 98 + #if not set(removed) it's defaulted to 98 + warning = 99 + #if not set(removed) it's defaulted to 99 + +} diff --git a/EMEA_PROD/slo/VCIS_GEN2_News_Requests.tf b/EMEA_PROD/slo/VCIS_GEN2_News_Requests.tf new file mode 100644 index 0000000..28964c6 --- /dev/null +++ b/EMEA_PROD/slo/VCIS_GEN2_News_Requests.tf @@ -0,0 +1,60 @@ +module VCIS_GEN2_News_Requests { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VCIS-GEN2 - News Requests" + description = "Success rate of GEN2 News" + + + #entity selector object + filter = "" + + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT + +(100)*((1)-(builtin:service.keyRequest.errors.fivexx.count:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"server (/cdp/release/vehicle/news) - vcis-information - prod~" + ), + tag(~"Environment:PROD~") + ) + ,entityName.in( + ~"/cdp/release/vehicle/news/servlet/start~", + ~"/cdp/release/vehicle/news/servlet/localerror~", + ~"/cdp/release/vehicle/news/servlet/newsOverview~", + ~"cdp/release/vehicle/news/servlet/football~", + ~"/cdp/release/vehicle/news/servlet/newsDetail~", + ~"/cdp/release/vehicle/news/servlet/image~", + )"))))):splitBy()) + / + (builtin:service.keyRequest.count.server:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"server (/cdp/release/vehicle/news) - vcis-information - prod~" + ), + tag(~"Environment:PROD~") + ) + ,entityName.in( + ~"/cdp/release/vehicle/news/servlet/start~", + ~"/cdp/release/vehicle/news/servlet/localerror~", + ~"/cdp/release/vehicle/news/servlet/newsOverview~", + ~"cdp/release/vehicle/news/servlet/football~", + ~"/cdp/release/vehicle/news/servlet/newsDetail~", + ~"/cdp/release/vehicle/news/servlet/image~", + )"))))):splitBy())) + +EOT + +#if not set (removed) it's defaulted to "-1d" +timeframe = "-1d" + +#currently the only possible value +evaluation = "AGGREGATE" + +#Target and warning percentage of the SLO as double +target = 98 #if not set(removed) it's defaulted to 98 +warning = 99 #if not set(removed) it's defaulted to 99 + +} diff --git a/NA_PROD/slo/VCIS_GEN2_News.tf b/NA_PROD/slo/VCIS_GEN2_News.tf new file mode 100644 index 0000000..3200e0a --- /dev/null +++ b/NA_PROD/slo/VCIS_GEN2_News.tf @@ -0,0 +1,33 @@ +module VCIS_GEN2_News { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VCIS-GEN2 - News" + + description = "News" + + + + #entity selector object + filter = "type(\"SERVICE\"),entityName(\"server (/cdp/release/vehicle/news) - vcis-information - prod\"),tag(\"Environment:PROD\")" + + + #metric expression of the calculation as done in data explorer ui + metric_expression = "(100)*((1)-( builtin:service.errors.fivexx.rate:splitBy():avg:auto:sort(value(avg,descending)):limit(10))/( builtin:service.requestCount.total:splitBy():sum:auto:sort(value(sum,descending)):limit(10)))" + + + #if not set (removed) it's defaulted to "-1d" + timeframe = "-1d" + + + #currently the only possible value + evaluation = "AGGREGATE" + + #Target and warning percentage of the SLO as double + target = 98 + #if not set(removed) it's defaulted to 98 + warning = 99 + #if not set(removed) it's defaulted to 99 + +} diff --git a/NA_PROD/slo/VCIS_GEN2_News_Requests.tf b/NA_PROD/slo/VCIS_GEN2_News_Requests.tf new file mode 100644 index 0000000..136c437 --- /dev/null +++ b/NA_PROD/slo/VCIS_GEN2_News_Requests.tf @@ -0,0 +1,54 @@ +module VCIS_GEN2_News_Requests { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VCIS-GEN2 - News Requests" + description = "Success rate of GEN2 News" + + + #entity selector object + filter = "" + + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT + +(100)*((1)-(builtin:service.keyRequest.errors.fivexx.count:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"server (/cdp/release/vehicle/news) - vcis-information - prod~" + ), + tag(~"Environment:PROD~") + ) + ,entityName.in( + ~"/cdp/release/vehicle/news/servlet/start~", + ~"/cdp/release/vehicle/news/servlet/localerror~", + ~"/cdp/release/vehicle/news/servlet/newsOverview~" + )"))))):splitBy()) + / + (builtin:service.keyRequest.count.server:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"server (/cdp/release/vehicle/news) - vcis-information - prod~" + ), + tag(~"Environment:PROD~") + ) + ,entityName.in( + ~"/cdp/release/vehicle/news/servlet/start~", + ~"/cdp/release/vehicle/news/servlet/localerror~", + ~"/cdp/release/vehicle/news/servlet/newsOverview~" + )"))))):splitBy())) + +EOT + +#if not set (removed) it's defaulted to "-1d" +timeframe = "-1d" + +#currently the only possible value +evaluation = "AGGREGATE" + +#Target and warning percentage of the SLO as double +target = 98 #if not set(removed) it's defaulted to 98 +warning = 99 #if not set(removed) it's defaulted to 99 + +} From ebd65a8f0e029e2ac297adc217a9b126ff3dcff3 Mon Sep 17 00:00:00 2001 From: "Pedro Vieira (CTW)" Date: Tue, 18 Oct 2022 18:01:44 +0100 Subject: [PATCH 4/8] OPMAAS-2671 & INFOTAIN-30041: add Gen2 SLOs Request to US AppStore and ConnNav --- NA_PROD/slo/VCIS_GEN2_AppStore.tf | 33 ++++++++++++ NA_PROD/slo/VCIS_GEN2_AppStore_Requests.tf | 52 +++++++++++++++++++ NA_PROD/slo/VCIS_GEN2_ConnNav.tf | 33 ++++++++++++ NA_PROD/slo/VCIS_GEN2_ConnNav_Requests.tf | 58 ++++++++++++++++++++++ 4 files changed, 176 insertions(+) create mode 100644 NA_PROD/slo/VCIS_GEN2_AppStore.tf create mode 100644 NA_PROD/slo/VCIS_GEN2_AppStore_Requests.tf create mode 100644 NA_PROD/slo/VCIS_GEN2_ConnNav.tf create mode 100644 NA_PROD/slo/VCIS_GEN2_ConnNav_Requests.tf diff --git a/NA_PROD/slo/VCIS_GEN2_AppStore.tf b/NA_PROD/slo/VCIS_GEN2_AppStore.tf new file mode 100644 index 0000000..de251e5 --- /dev/null +++ b/NA_PROD/slo/VCIS_GEN2_AppStore.tf @@ -0,0 +1,33 @@ +module VCIS_GEN2_AppStore { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VCIS-GEN2 - AppStore" + + description = "AppStore" + + + + #entity selector object + filter = "type(\"SERVICE\"),entityName(\"server (/cdp/release/vehicle/appstore) - vcis-information - prod\"),tag(\"Environment:PROD\")" + + + #metric expression of the calculation as done in data explorer ui + metric_expression = "(100)*((1)-( builtin:service.errors.fivexx.rate:splitBy():avg:auto:sort(value(avg,descending)):limit(10))/( builtin:service.requestCount.total:splitBy():sum:auto:sort(value(sum,descending)):limit(10)))" + + + #if not set (removed) it's defaulted to "-1d" + timeframe = "-1d" + + + #currently the only possible value + evaluation = "AGGREGATE" + + #Target and warning percentage of the SLO as double + target = 98 + #if not set(removed) it's defaulted to 98 + warning = 99 + #if not set(removed) it's defaulted to 99 + +} diff --git a/NA_PROD/slo/VCIS_GEN2_AppStore_Requests.tf b/NA_PROD/slo/VCIS_GEN2_AppStore_Requests.tf new file mode 100644 index 0000000..e4a7074 --- /dev/null +++ b/NA_PROD/slo/VCIS_GEN2_AppStore_Requests.tf @@ -0,0 +1,52 @@ +module VCIS_GEN2_AppStore_Requests { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VCIS-GEN2 - AppStore Requests" + description = "Success rate of GEN2 AppStore" + + + #entity selector object + filter = "" + + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT + +(100)*((1)-(builtin:service.keyRequest.errors.fivexx.count:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"server (/cdp/release/vehicle/appstore) - vcis-information - prod~" + ), + tag(~"Environment:PROD~") + ) + ,entityName.in( + ~"/cdp/release/vehicle/appstore/servlet/manage~", + ~"/cdp/release/vehicle/appstore/servlet/start~" + )"))))):splitBy()) + / + (builtin:service.keyRequest.count.server:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"server (/cdp/release/vehicle/appstore) - vcis-information - prod~" + ), + tag(~"Environment:PROD~") + ) + ,entityName.in( + ~"/cdp/release/vehicle/appstore/servlet/manage~", + ~"/cdp/release/vehicle/appstore/servlet/start~" + )"))))):splitBy())) + +EOT + +#if not set (removed) it's defaulted to "-1d" +timeframe = "-1d" + +#currently the only possible value +evaluation = "AGGREGATE" + +#Target and warning percentage of the SLO as double +target = 98 #if not set(removed) it's defaulted to 98 +warning = 99 #if not set(removed) it's defaulted to 99 + +} diff --git a/NA_PROD/slo/VCIS_GEN2_ConnNav.tf b/NA_PROD/slo/VCIS_GEN2_ConnNav.tf new file mode 100644 index 0000000..50e4357 --- /dev/null +++ b/NA_PROD/slo/VCIS_GEN2_ConnNav.tf @@ -0,0 +1,33 @@ +module VCIS_GEN2_ConnNav { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VCIS-GEN2 - ConnNav" + + description = "ConnNav" + + + + #entity selector object + filter = "type(\"SERVICE\"),entityName(\"server (/cdp/release/vehicle/connnav) - vcis-information - prod\"),tag(\"Environment:PROD\")" + + + #metric expression of the calculation as done in data explorer ui + metric_expression = "(100)*((1)-( builtin:service.errors.fivexx.rate:splitBy():avg:auto:sort(value(avg,descending)):limit(10))/( builtin:service.requestCount.total:splitBy():sum:auto:sort(value(sum,descending)):limit(10)))" + + + #if not set (removed) it's defaulted to "-1d" + timeframe = "-1d" + + + #currently the only possible value + evaluation = "AGGREGATE" + + #Target and warning percentage of the SLO as double + target = 98 + #if not set(removed) it's defaulted to 98 + warning = 99 + #if not set(removed) it's defaulted to 99 + +} diff --git a/NA_PROD/slo/VCIS_GEN2_ConnNav_Requests.tf b/NA_PROD/slo/VCIS_GEN2_ConnNav_Requests.tf new file mode 100644 index 0000000..f34a67d --- /dev/null +++ b/NA_PROD/slo/VCIS_GEN2_ConnNav_Requests.tf @@ -0,0 +1,58 @@ +module VCIS_GEN2_ConnNav_Requests { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VCIS-GEN2 - ConnNav Requests" + description = "Success rate of GEN2 ConnNav" + + + #entity selector object + filter = "" + + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT + +(100)*((1)-(builtin:service.keyRequest.errors.fivexx.count:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"server (/cdp/release/vehicle/connnav) - vcis-information - prod~" + ), + tag(~"Environment:PROD~") + ) + ,entityName.in( + ~"/cdp/release/vehicle/connnav/servlet/getLocalSearch~", + ~"/cdp/release/vehicle/connnav/servlet/getLocalSuggest~", + ~"/cdp/release/vehicle/connnav/servlet/setClickTracking~", + ~"/cdp/release/vehicle/connnav/servlet/navigateToCalendar~", + ~"/cdp/release/vehicle/connnav/servlet/resetVehicleData~" + )"))))):splitBy()) + / + (builtin:service.keyRequest.count.server:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"server (/cdp/release/vehicle/connnav) - vcis-information - prod~" + ), + tag(~"Environment:PROD~") + ) + ,entityName.in( + ~"/cdp/release/vehicle/connnav/servlet/getLocalSearch~", + ~"/cdp/release/vehicle/connnav/servlet/getLocalSuggest~", + ~"/cdp/release/vehicle/connnav/servlet/setClickTracking~", + ~"/cdp/release/vehicle/connnav/servlet/navigateToCalendar~", + ~"/cdp/release/vehicle/connnav/servlet/resetVehicleData~" + )"))))):splitBy())) + +EOT + +#if not set (removed) it's defaulted to "-1d" +timeframe = "-1d" + +#currently the only possible value +evaluation = "AGGREGATE" + +#Target and warning percentage of the SLO as double +target = 98 #if not set(removed) it's defaulted to 98 +warning = 99 #if not set(removed) it's defaulted to 99 + +} From 08e372f5fbe1b2a306b9d8af09e04d28d62ac4eb Mon Sep 17 00:00:00 2001 From: "Eduardo Pinto (CTW)" Date: Tue, 18 Oct 2022 17:21:56 +0100 Subject: [PATCH 5/8] OPMAAS-2671 & INFOTAIN-30041: Add GEN2 Online Weather --- EMEA_PROD/slo/VCIS_GEN2_OnlineWeather.tf | 33 ++++++++++ .../slo/VCIS_GEN2_OnlineWeather_Requests.tf | 60 +++++++++++++++++++ NA_PROD/slo/VCIS_GEN2_OnlineWeather.tf | 33 ++++++++++ .../slo/VCIS_GEN2_OnlineWeather_Requests.tf | 46 ++++++++++++++ 4 files changed, 172 insertions(+) create mode 100644 EMEA_PROD/slo/VCIS_GEN2_OnlineWeather.tf create mode 100644 EMEA_PROD/slo/VCIS_GEN2_OnlineWeather_Requests.tf create mode 100644 NA_PROD/slo/VCIS_GEN2_OnlineWeather.tf create mode 100644 NA_PROD/slo/VCIS_GEN2_OnlineWeather_Requests.tf diff --git a/EMEA_PROD/slo/VCIS_GEN2_OnlineWeather.tf b/EMEA_PROD/slo/VCIS_GEN2_OnlineWeather.tf new file mode 100644 index 0000000..e7602b4 --- /dev/null +++ b/EMEA_PROD/slo/VCIS_GEN2_OnlineWeather.tf @@ -0,0 +1,33 @@ +module VCIS_GEN2_OnlineWeather { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VCIS-GEN2 - Online Weather" + + description = "Online Weather" + + + + #entity selector object + filter = "type(\"SERVICE\"),entityName(\"server (/cdp/release/vehicle/online_weather) - vcis-information - prod\"),tag(\"Environment:PROD\")" + + + #metric expression of the calculation as done in data explorer ui + metric_expression = "(100)*((1)-( builtin:service.errors.fivexx.rate:splitBy():avg:auto:sort(value(avg,descending)):limit(10))/( builtin:service.requestCount.total:splitBy():sum:auto:sort(value(sum,descending)):limit(10)))" + + + #if not set (removed) it's defaulted to "-1d" + timeframe = "-1d" + + + #currently the only possible value + evaluation = "AGGREGATE" + + #Target and warning percentage of the SLO as double + target = 98 + #if not set(removed) it's defaulted to 98 + warning = 99 + #if not set(removed) it's defaulted to 99 + +} diff --git a/EMEA_PROD/slo/VCIS_GEN2_OnlineWeather_Requests.tf b/EMEA_PROD/slo/VCIS_GEN2_OnlineWeather_Requests.tf new file mode 100644 index 0000000..a40a4ea --- /dev/null +++ b/EMEA_PROD/slo/VCIS_GEN2_OnlineWeather_Requests.tf @@ -0,0 +1,60 @@ +module VCIS_GEN2_OnlineWeather_Requests { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VCIS-GEN2 - Online Weather Requests" + description = "Success rate of GEN2 Online Weather" + + + #entity selector object + filter = "" + + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT + +(100)*((1)-(builtin:service.keyRequest.errors.fivexx.count:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"server (/cdp/release/vehicle/online_weather) - vcis-information - prod~" + ), + tag(~"Environment:PROD~") + ) + ,entityName.in( + ~"/cdp/release/vehicle/online_weather/servlet/widget~", + ~"/cdp/release/vehicle/online_weather/servlet/weather~", + ~"/cdp/release/vehicle/online_weather/servlet/rainfallimage~", + ~"/cdp/release/vehicle/online_weather/servlet/radar~", + ~"/cdp/release/vehicle/online_weather/servlet/image~", + ~"/cdp/release/vehicle/online_weather/servlet/geoCodingOverview~" + )"))))):splitBy()) + / + (builtin:service.keyRequest.count.server:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"server (/cdp/release/vehicle/online_weather) - vcis-information - prod~" + ), + tag(~"Environment:PROD~") + ) + ,entityName.in( + ~"/cdp/release/vehicle/online_weather/servlet/widget~", + ~"/cdp/release/vehicle/online_weather/servlet/weather~", + ~"/cdp/release/vehicle/online_weather/servlet/rainfallimage~", + ~"/cdp/release/vehicle/online_weather/servlet/radar~", + ~"/cdp/release/vehicle/online_weather/servlet/image~", + ~"/cdp/release/vehicle/online_weather/servlet/geoCodingOverview~" + )"))))):splitBy())) + +EOT + +#if not set (removed) it's defaulted to "-1d" +timeframe = "-1d" + +#currently the only possible value +evaluation = "AGGREGATE" + +#Target and warning percentage of the SLO as double +target = 98 #if not set(removed) it's defaulted to 98 +warning = 99 #if not set(removed) it's defaulted to 99 + +} diff --git a/NA_PROD/slo/VCIS_GEN2_OnlineWeather.tf b/NA_PROD/slo/VCIS_GEN2_OnlineWeather.tf new file mode 100644 index 0000000..e7602b4 --- /dev/null +++ b/NA_PROD/slo/VCIS_GEN2_OnlineWeather.tf @@ -0,0 +1,33 @@ +module VCIS_GEN2_OnlineWeather { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VCIS-GEN2 - Online Weather" + + description = "Online Weather" + + + + #entity selector object + filter = "type(\"SERVICE\"),entityName(\"server (/cdp/release/vehicle/online_weather) - vcis-information - prod\"),tag(\"Environment:PROD\")" + + + #metric expression of the calculation as done in data explorer ui + metric_expression = "(100)*((1)-( builtin:service.errors.fivexx.rate:splitBy():avg:auto:sort(value(avg,descending)):limit(10))/( builtin:service.requestCount.total:splitBy():sum:auto:sort(value(sum,descending)):limit(10)))" + + + #if not set (removed) it's defaulted to "-1d" + timeframe = "-1d" + + + #currently the only possible value + evaluation = "AGGREGATE" + + #Target and warning percentage of the SLO as double + target = 98 + #if not set(removed) it's defaulted to 98 + warning = 99 + #if not set(removed) it's defaulted to 99 + +} diff --git a/NA_PROD/slo/VCIS_GEN2_OnlineWeather_Requests.tf b/NA_PROD/slo/VCIS_GEN2_OnlineWeather_Requests.tf new file mode 100644 index 0000000..dab7573 --- /dev/null +++ b/NA_PROD/slo/VCIS_GEN2_OnlineWeather_Requests.tf @@ -0,0 +1,46 @@ +module VCIS_GEN2_OnlineWeather_Requests { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VCIS-GEN2 - Online Weather Requests" + description = "Success rate of GEN2 Online Weather" + + + #entity selector object + filter = "" + + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT + +(100)*((1)-(builtin:service.keyRequest.errors.fivexx.count:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"server (/cdp/release/vehicle/online_weather) - vcis-information - prod~" + ), + tag(~"Environment:PROD~") + ) + ,entityName.in(~"/cdp/release/vehicle/online_weather/servlet/weather~")"))))):splitBy()) + / + (builtin:service.keyRequest.count.server:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"server (/cdp/release/vehicle/online_weather) - vcis-information - prod~" + ), + tag(~"Environment:PROD~") + ) + ,entityName.in(~"/cdp/release/vehicle/online_weather/servlet/weather~")"))))):splitBy()) + +EOT + +#if not set (removed) it's defaulted to "-1d" +timeframe = "-1d" + +#currently the only possible value +evaluation = "AGGREGATE" + +#Target and warning percentage of the SLO as double +target = 98 #if not set(removed) it's defaulted to 98 +warning = 99 #if not set(removed) it's defaulted to 99 + +} From 7457b56a01ba9e6b27b7647e7d2cd6a33aac31e5 Mon Sep 17 00:00:00 2001 From: "Eduardo Pinto (CTW)" Date: Tue, 18 Oct 2022 17:28:06 +0100 Subject: [PATCH 6/8] OPMAAS-2671 & INFOTAIN-30041: Add GEN2 Country Info --- EMEA_PROD/slo/VCIS_GEN2_CountryInfo.tf | 33 ++++++++++++ .../slo/VCIS_GEN2_CountryInfo_Requests.tf | 52 +++++++++++++++++++ 2 files changed, 85 insertions(+) create mode 100644 EMEA_PROD/slo/VCIS_GEN2_CountryInfo.tf create mode 100644 EMEA_PROD/slo/VCIS_GEN2_CountryInfo_Requests.tf diff --git a/EMEA_PROD/slo/VCIS_GEN2_CountryInfo.tf b/EMEA_PROD/slo/VCIS_GEN2_CountryInfo.tf new file mode 100644 index 0000000..06a365e --- /dev/null +++ b/EMEA_PROD/slo/VCIS_GEN2_CountryInfo.tf @@ -0,0 +1,33 @@ +module VCIS_GEN2_CountryInfo { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VCIS-GEN2 - Country Info" + + description = "Country Info" + + + + #entity selector object + filter = "type(\"SERVICE\"),entityName(\"server (/cdp/release/vehicle/countryinfo) - vcis-information - prod\"),tag(\"Environment:PROD\")" + + + #metric expression of the calculation as done in data explorer ui + metric_expression = "(100)*((1)-( builtin:service.errors.fivexx.rate:splitBy():avg:auto:sort(value(avg,descending)):limit(10))/( builtin:service.requestCount.total:splitBy():sum:auto:sort(value(sum,descending)):limit(10)))" + + + #if not set (removed) it's defaulted to "-1d" + timeframe = "-1d" + + + #currently the only possible value + evaluation = "AGGREGATE" + + #Target and warning percentage of the SLO as double + target = 98 + #if not set(removed) it's defaulted to 98 + warning = 99 + #if not set(removed) it's defaulted to 99 + +} diff --git a/EMEA_PROD/slo/VCIS_GEN2_CountryInfo_Requests.tf b/EMEA_PROD/slo/VCIS_GEN2_CountryInfo_Requests.tf new file mode 100644 index 0000000..cb91e71 --- /dev/null +++ b/EMEA_PROD/slo/VCIS_GEN2_CountryInfo_Requests.tf @@ -0,0 +1,52 @@ +module VCIS_GEN2_CountryInfo_Requests { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VCIS-GEN2 - Country Info Requests" + description = "Success rate of GEN2 Country Info" + + + #entity selector object + filter = "" + + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT + +(100)*((1)-(builtin:service.keyRequest.errors.fivexx.count:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"server (/cdp/release/vehicle/countryinfo) - vcis-information - prod~" + ), + tag(~"Environment:PROD~") + ) + ,entityName.in( + ~"/cdp/release/vehicle/countryinfo/servlet/countryInfo~", + ~"/cdp/release/vehicle/countryinfo/servlet/cabCountryInfo~" + )"))))):splitBy()) + / + (builtin:service.keyRequest.count.server:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"server (/cdp/release/vehicle/countryinfo) - vcis-information - prod~" + ), + tag(~"Environment:PROD~") + ) + ,entityName.in( + ~"/cdp/release/vehicle/countryinfo/servlet/countryInfo~", + ~"/cdp/release/vehicle/countryinfo/servlet/cabCountryInfo~" + )"))))):splitBy())) + +EOT + +#if not set (removed) it's defaulted to "-1d" +timeframe = "-1d" + +#currently the only possible value +evaluation = "AGGREGATE" + +#Target and warning percentage of the SLO as double +target = 98 #if not set(removed) it's defaulted to 98 +warning = 99 #if not set(removed) it's defaulted to 99 + +} From 3dec39f6a18a22e3869fada7d7aaab74902f24ea Mon Sep 17 00:00:00 2001 From: "Eduardo Pinto (CTW)" Date: Tue, 18 Oct 2022 18:00:23 +0100 Subject: [PATCH 7/8] OPMAAS-2671 & INFOTAIN-30041: Add GEN2 Office2 --- EMEA_PROD/slo/VCIS_GEN2_Office2.tf | 33 ++++++++++ EMEA_PROD/slo/VCIS_GEN2_Office2_Requests.tf | 70 +++++++++++++++++++++ 2 files changed, 103 insertions(+) create mode 100644 EMEA_PROD/slo/VCIS_GEN2_Office2.tf create mode 100644 EMEA_PROD/slo/VCIS_GEN2_Office2_Requests.tf diff --git a/EMEA_PROD/slo/VCIS_GEN2_Office2.tf b/EMEA_PROD/slo/VCIS_GEN2_Office2.tf new file mode 100644 index 0000000..24ba7cd --- /dev/null +++ b/EMEA_PROD/slo/VCIS_GEN2_Office2.tf @@ -0,0 +1,33 @@ +module VCIS_GEN2_Office2 { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VCIS-GEN2 - Office2" + + description = "Office2" + + + + #entity selector object + filter = "type(\"SERVICE\"),entityName(\"server (/cdp/release/vehicle/office2) - vcis-information - prod\"),tag(\"Environment:PROD\")" + + + #metric expression of the calculation as done in data explorer ui + metric_expression = "(100)*((1)-( builtin:service.errors.fivexx.rate:splitBy():avg:auto:sort(value(avg,descending)):limit(10))/( builtin:service.requestCount.total:splitBy():sum:auto:sort(value(sum,descending)):limit(10)))" + + + #if not set (removed) it's defaulted to "-1d" + timeframe = "-1d" + + + #currently the only possible value + evaluation = "AGGREGATE" + + #Target and warning percentage of the SLO as double + target = 98 + #if not set(removed) it's defaulted to 98 + warning = 99 + #if not set(removed) it's defaulted to 99 + +} diff --git a/EMEA_PROD/slo/VCIS_GEN2_Office2_Requests.tf b/EMEA_PROD/slo/VCIS_GEN2_Office2_Requests.tf new file mode 100644 index 0000000..7d4e5a5 --- /dev/null +++ b/EMEA_PROD/slo/VCIS_GEN2_Office2_Requests.tf @@ -0,0 +1,70 @@ +module VCIS_GEN2_Office2_Requests { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VCIS-GEN2 - Office2 Requests" + description = "Success rate of GEN2 Office2" + + + #entity selector object + filter = "" + + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT + +(100)*((1)-(builtin:service.keyRequest.errors.fivexx.count:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"server (/cdp/release/vehicle/office2) - vcis-information - prod~" + ), + tag(~"Environment:PROD~") + ) + ,entityName.in( + ~"/cdp/release/vehicle/office2/servlet/emailOverview~", + ~"/cdp/release/vehicle/office2/servlet/emailInbox~", + ~"/cdp/release/vehicle/office2/servlet/emailAsyncInboxStatus~", + ~"/cdp/release/vehicle/office2/servlet/composeEmail~", + ~"/cdp/release/vehicle/office2/servlet/readEmail~", + ~"/cdp/release/vehicle/office2/servlet/deleteEmail~", + ~"/cdp/release/vehicle/office2/servlet/ajaxReload~", + ~"/cdp/release/vehicle/office2/servlet/emailTemplates~", + ~"/cdp/release/vehicle/office2/servlet/geoCodingOutput~", + ~"/cdp/release/vehicle/office2/servlet/historyGo~", + ~"/cdp/release/vehicle/office2/servlet/error~" + )"))))):splitBy()) + / + (builtin:service.keyRequest.count.server:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"server (/cdp/release/vehicle/office2) - vcis-information - prod~" + ), + tag(~"Environment:PROD~") + ) + ,entityName.in( + ~"/cdp/release/vehicle/office2/servlet/emailOverview~", + ~"/cdp/release/vehicle/office2/servlet/emailInbox~", + ~"/cdp/release/vehicle/office2/servlet/emailAsyncInboxStatus~", + ~"/cdp/release/vehicle/office2/servlet/composeEmail~", + ~"/cdp/release/vehicle/office2/servlet/readEmail~", + ~"/cdp/release/vehicle/office2/servlet/deleteEmail~", + ~"/cdp/release/vehicle/office2/servlet/ajaxReload~", + ~"/cdp/release/vehicle/office2/servlet/emailTemplates~", + ~"/cdp/release/vehicle/office2/servlet/geoCodingOutput~", + ~"/cdp/release/vehicle/office2/servlet/historyGo~", + ~"/cdp/release/vehicle/office2/servlet/error~" + )"))))):splitBy())) + +EOT + +#if not set (removed) it's defaulted to "-1d" +timeframe = "-1d" + +#currently the only possible value +evaluation = "AGGREGATE" + +#Target and warning percentage of the SLO as double +target = 98 #if not set(removed) it's defaulted to 98 +warning = 99 #if not set(removed) it's defaulted to 99 + +} From db0b9139d36231983f0752e3916d630389d7c7c9 Mon Sep 17 00:00:00 2001 From: "Pedro Vieira (CTW)" Date: Wed, 19 Oct 2022 11:57:35 +0100 Subject: [PATCH 8/8] OPMAAS-2671 & INFOTAIN-30041: add Gen2 Vehicle SLOs requests --- EMEA_PROD/slo/VCIS_GEN2_Vehicle.tf | 33 ++++++++++ EMEA_PROD/slo/VCIS_GEN2_Vehicle_Requests.tf | 72 +++++++++++++++++++++ NA_PROD/slo/VCIS_GEN2_Vehicle.tf | 33 ++++++++++ NA_PROD/slo/VCIS_GEN2_Vehicle_Requests.tf | 64 ++++++++++++++++++ 4 files changed, 202 insertions(+) create mode 100644 EMEA_PROD/slo/VCIS_GEN2_Vehicle.tf create mode 100644 EMEA_PROD/slo/VCIS_GEN2_Vehicle_Requests.tf create mode 100644 NA_PROD/slo/VCIS_GEN2_Vehicle.tf create mode 100644 NA_PROD/slo/VCIS_GEN2_Vehicle_Requests.tf diff --git a/EMEA_PROD/slo/VCIS_GEN2_Vehicle.tf b/EMEA_PROD/slo/VCIS_GEN2_Vehicle.tf new file mode 100644 index 0000000..af807e3 --- /dev/null +++ b/EMEA_PROD/slo/VCIS_GEN2_Vehicle.tf @@ -0,0 +1,33 @@ +module VCIS_GEN2_Vehicle { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VCIS-GEN2 - Vehicle" + + description = "Vehicle" + + + + #entity selector object + filter = "type(\"SERVICE\"),entityName(\"server (/cdp/release/vehicle) - vcis-information - prod\"),tag(\"Environment:PROD\")" + + + #metric expression of the calculation as done in data explorer ui + metric_expression = "(100)*((1)-( builtin:service.errors.fivexx.rate:splitBy():avg:auto:sort(value(avg,descending)):limit(10))/( builtin:service.requestCount.total:splitBy():sum:auto:sort(value(sum,descending)):limit(10)))" + + + #if not set (removed) it's defaulted to "-1d" + timeframe = "-1d" + + + #currently the only possible value + evaluation = "AGGREGATE" + + #Target and warning percentage of the SLO as double + target = 98 + #if not set(removed) it's defaulted to 98 + warning = 99 + #if not set(removed) it's defaulted to 99 + +} diff --git a/EMEA_PROD/slo/VCIS_GEN2_Vehicle_Requests.tf b/EMEA_PROD/slo/VCIS_GEN2_Vehicle_Requests.tf new file mode 100644 index 0000000..bf409f8 --- /dev/null +++ b/EMEA_PROD/slo/VCIS_GEN2_Vehicle_Requests.tf @@ -0,0 +1,72 @@ +module VCIS_GEN2_Vehicle_Requests { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VCIS-GEN2 - Vehicle Requests" + description = "Success rate of GEN2 Vehicle" + + + #entity selector object + filter = "" + + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT + +(100)*((1)-(builtin:service.keyRequest.errors.fivexx.count:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"server (/cdp/release/vehicle) - vcis-information - prod~" + ), + tag(~"Environment:PROD~") + ) + ,entityName.in( + ~"/cdp/release/vehicle/servlet/getLocalSuggest~", + ~"/cdp/release/vehicle/servlet/image~", + ~"/cdp/release/vehicle/servlet/home~", + ~"/cdp/release/vehicle/servlet/geoCodingOutput~", + ~"/cdp/release/vehicle/servlet/getLocalSearch~", + ~"/cdp/release/vehicle/servlet/geoCodingHelper~", + ~"/cdp/release/vehicle/servlet/intermediatePage~", + ~"/cdp/release/vehicle/servlet/imprint~", + ~"/cdp/release/vehicle/servlet/navigateToCalendar~", + ~"/cdp/release/vehicle/servlet/setClickTracking~", + ~"/cdp/release/vehicle/servlet/geoCodingOverview~", + ~"/cdp/release/vehicle/servlet/clearStorages~" + )"))))):splitBy()) + / + (builtin:service.keyRequest.count.server:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"server (/cdp/release/vehicle) - vcis-information - prod~" + ), + tag(~"Environment:PROD~") + ) + ,entityName.in( + ~"/cdp/release/vehicle/servlet/getLocalSuggest~", + ~"/cdp/release/vehicle/servlet/image~", + ~"/cdp/release/vehicle/servlet/home~", + ~"/cdp/release/vehicle/servlet/geoCodingOutput~", + ~"/cdp/release/vehicle/servlet/getLocalSearch~", + ~"/cdp/release/vehicle/servlet/geoCodingHelper~", + ~"/cdp/release/vehicle/servlet/intermediatePage~", + ~"/cdp/release/vehicle/servlet/imprint~", + ~"/cdp/release/vehicle/servlet/navigateToCalendar~", + ~"/cdp/release/vehicle/servlet/setClickTracking~", + ~"/cdp/release/vehicle/servlet/geoCodingOverview~", + ~"/cdp/release/vehicle/servlet/clearStorages~" + )"))))):splitBy())) + +EOT + +#if not set (removed) it's defaulted to "-1d" +timeframe = "-1d" + +#currently the only possible value +evaluation = "AGGREGATE" + +#Target and warning percentage of the SLO as double +target = 98 #if not set(removed) it's defaulted to 98 +warning = 99 #if not set(removed) it's defaulted to 99 + +} diff --git a/NA_PROD/slo/VCIS_GEN2_Vehicle.tf b/NA_PROD/slo/VCIS_GEN2_Vehicle.tf new file mode 100644 index 0000000..af807e3 --- /dev/null +++ b/NA_PROD/slo/VCIS_GEN2_Vehicle.tf @@ -0,0 +1,33 @@ +module VCIS_GEN2_Vehicle { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VCIS-GEN2 - Vehicle" + + description = "Vehicle" + + + + #entity selector object + filter = "type(\"SERVICE\"),entityName(\"server (/cdp/release/vehicle) - vcis-information - prod\"),tag(\"Environment:PROD\")" + + + #metric expression of the calculation as done in data explorer ui + metric_expression = "(100)*((1)-( builtin:service.errors.fivexx.rate:splitBy():avg:auto:sort(value(avg,descending)):limit(10))/( builtin:service.requestCount.total:splitBy():sum:auto:sort(value(sum,descending)):limit(10)))" + + + #if not set (removed) it's defaulted to "-1d" + timeframe = "-1d" + + + #currently the only possible value + evaluation = "AGGREGATE" + + #Target and warning percentage of the SLO as double + target = 98 + #if not set(removed) it's defaulted to 98 + warning = 99 + #if not set(removed) it's defaulted to 99 + +} diff --git a/NA_PROD/slo/VCIS_GEN2_Vehicle_Requests.tf b/NA_PROD/slo/VCIS_GEN2_Vehicle_Requests.tf new file mode 100644 index 0000000..3b56890 --- /dev/null +++ b/NA_PROD/slo/VCIS_GEN2_Vehicle_Requests.tf @@ -0,0 +1,64 @@ +module VCIS_GEN2_Vehicle_Requests { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VCIS-GEN2 - Vehicle Requests" + description = "Success rate of GEN2 Vehicle" + + + #entity selector object + filter = "" + + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT + +(100)*((1)-(builtin:service.keyRequest.errors.fivexx.count:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"server (/cdp/release/vehicle) - vcis-information - prod~" + ), + tag(~"Environment:PROD~") + ) + ,entityName.in( + ~"/cdp/release/vehicle/servlet/getLocalSuggest~", + ~"/cdp/release/vehicle/servlet/getLocalSearch~", + ~"/cdp/release/vehicle/servlet/intermediatePage~", + ~"/cdp/release/vehicle/servlet/setClickTracking~", + ~"/cdp/release/vehicle/servlet/glsCabOverview-US-US~", + ~"/cdp/release/vehicle/servlet/start~", + ~"/cdp/release/vehicle/servlet~", + ~"/cdp/release/vehicle/servlet/clearStorages~" + )"))))):splitBy()) + / + (builtin:service.keyRequest.count.server:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"server (/cdp/release/vehicle) - vcis-information - prod~" + ), + tag(~"Environment:PROD~") + ) + ,entityName.in( + ~"/cdp/release/vehicle/servlet/getLocalSuggest~", + ~"/cdp/release/vehicle/servlet/getLocalSearch~", + ~"/cdp/release/vehicle/servlet/intermediatePage~", + ~"/cdp/release/vehicle/servlet/setClickTracking~", + ~"/cdp/release/vehicle/servlet/glsCabOverview-US-US~", + ~"/cdp/release/vehicle/servlet/start~", + ~"/cdp/release/vehicle/servlet~", + ~"/cdp/release/vehicle/servlet/clearStorages~" + )"))))):splitBy())) + +EOT + +#if not set (removed) it's defaulted to "-1d" +timeframe = "-1d" + +#currently the only possible value +evaluation = "AGGREGATE" + +#Target and warning percentage of the SLO as double +target = 98 #if not set(removed) it's defaulted to 98 +warning = 99 #if not set(removed) it's defaulted to 99 + +}