diff --git a/EMEA_PROD/slo/VCIS_GEN2_AppStore.tf b/EMEA_PROD/slo/VCIS_GEN2_AppStore.tf new file mode 100644 index 0000000..de251e5 --- /dev/null +++ b/EMEA_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/EMEA_PROD/slo/VCIS_GEN2_AppStore_Requests.tf b/EMEA_PROD/slo/VCIS_GEN2_AppStore_Requests.tf new file mode 100644 index 0000000..b6a9c85 --- /dev/null +++ b/EMEA_PROD/slo/VCIS_GEN2_AppStore_Requests.tf @@ -0,0 +1,56 @@ +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~", + ~"/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 + +} 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 + +} 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 + +} 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/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 + +} 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/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_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 + +} 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 + +} 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 + +} 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 + +}