diff --git a/NA_PROD/slo/VCIS_GEN3_NBT_News.tf b/NA_PROD/slo/VCIS_GEN3_NBT_News.tf new file mode 100644 index 0000000..c9bd6d5 --- /dev/null +++ b/NA_PROD/slo/VCIS_GEN3_NBT_News.tf @@ -0,0 +1,33 @@ +module VCIS_GEN3_NBT_News { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VCIS-GEN3 - NBT News" + + description = "Vehicle NBT News" + + + + #entity selector object + filter = "type(\"SERVICE\"),entityName(\"server (/vehicle/nbt/nbt_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 + +} \ No newline at end of file diff --git a/NA_PROD/slo/VCIS_GEN3_NBT_News_Requests.tf b/NA_PROD/slo/VCIS_GEN3_NBT_News_Requests.tf new file mode 100644 index 0000000..c669269 --- /dev/null +++ b/NA_PROD/slo/VCIS_GEN3_NBT_News_Requests.tf @@ -0,0 +1,55 @@ +module VCIS_GEN3_NBT_News_Requests { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VCIS-GEN3 - NBT News - Requests" + description = "Success rate of vehicle nbt 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 (/vehicle/nbt/nbt_news) - vcis-information - prod~"), tag(~"Environment:PROD~")), + entityName.in(~"/vehicle/nbt/nbt_news/servlet/image~", + ~"/vehicle/nbt/nbt_news/servlet/start~", + ~"/vehicle/nbt/nbt_news/servlet/newsOverview~", + ~"/vehicle/nbt/nbt_news/servlet/app~", + ~"/vehicle/nbt/nbt_news/servlet/geocoder~", + ~"/vehicle/nbt/nbt_news/servlet/commoni18n~", + ~"/vehicle/nbt/nbt_news/app.appcache~", + ~"/vehicle/nbt/nbt_news/servlet/browserCache~")"))))) + :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 (/vehicle/nbt/nbt_news) - vcis-information - prod~"), tag(~"Environment:PROD~")), + entityName.in(~"/vehicle/nbt/nbt_news/servlet/image~", + ~"/vehicle/nbt/nbt_news/servlet/start~", + ~"/vehicle/nbt/nbt_news/servlet/newsOverview~", + ~"/vehicle/nbt/nbt_news/servlet/app~", + ~"/vehicle/nbt/nbt_news/servlet/geocoder~", + ~"/vehicle/nbt/nbt_news/servlet/commoni18n~", + ~"/vehicle/nbt/nbt_news/app.appcache~", + ~"/vehicle/nbt/nbt_news/servlet/browserCache~")"))))) + :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 + +} \ No newline at end of file diff --git a/NA_PROD/slo/VCIS_GEN3_NBT_Office2.tf b/NA_PROD/slo/VCIS_GEN3_NBT_Office2.tf new file mode 100644 index 0000000..55938c6 --- /dev/null +++ b/NA_PROD/slo/VCIS_GEN3_NBT_Office2.tf @@ -0,0 +1,33 @@ +module VCIS_GEN3_NBT_Office2 { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VCIS-GEN3 - NBT Office2" + + description = "Vehicle NBT Office2" + + + + #entity selector object + filter = "type(\"SERVICE\"),entityName(\"server (/vehicle/nbt/nbt_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 + +} \ No newline at end of file diff --git a/NA_PROD/slo/VCIS_GEN3_NBT_Office2_Requests.tf b/NA_PROD/slo/VCIS_GEN3_NBT_Office2_Requests.tf new file mode 100644 index 0000000..adf0ee6 --- /dev/null +++ b/NA_PROD/slo/VCIS_GEN3_NBT_Office2_Requests.tf @@ -0,0 +1,53 @@ +module VCIS_GEN3_NBT_Office2_Requests { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VCIS-GEN3 - NBT Office2 - Requests" + description = "Success rate of vehicle nbt 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 (/vehicle/nbt/nbt_office2) - vcis-information - prod~"), tag(~"Environment:PROD~")), + entityName.in(~"/vehicle/nbt/nbt_office2/servlet/setting~", + ~"/vehicle/nbt/nbt_office2/servlet/start~", + ~"/vehicle/nbt/nbt_office2/servlet/app~", + ~"/vehicle/nbt/nbt_office2/servlet/commoni18n~", + ~"/vehicle/nbt/nbt_office2/servlet/geocoder~", + ~"/vehicle/nbt/nbt_office2/app.appcache~", + ~"/vehicle/nbt/nbt_office2/servlet/browserCache~")"))))) + :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 (/vehicle/nbt/nbt_office2) - vcis-information - prod~"), tag(~"Environment:PROD~")), + entityName.in(~"/vehicle/nbt/nbt_office2/servlet/setting~", + ~"/vehicle/nbt/nbt_office2/servlet/start~", + ~"/vehicle/nbt/nbt_office2/servlet/app~", + ~"/vehicle/nbt/nbt_office2/servlet/commoni18n~", + ~"/vehicle/nbt/nbt_office2/servlet/geocoder~", + ~"/vehicle/nbt/nbt_office2/app.appcache~", + ~"/vehicle/nbt/nbt_office2/servlet/browserCache~")"))))) + :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 + +} \ No newline at end of file diff --git a/NA_PROD/slo/VCIS_GEN3_NBT_Weather.tf b/NA_PROD/slo/VCIS_GEN3_NBT_Weather.tf new file mode 100644 index 0000000..2d9d654 --- /dev/null +++ b/NA_PROD/slo/VCIS_GEN3_NBT_Weather.tf @@ -0,0 +1,33 @@ +module VCIS_GEN3_NBT_Weather { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VCIS-GEN3 - NBT Weather" + + description = "Vehicle NBT Weather" + + + + #entity selector object + filter = "type(\"SERVICE\"),entityName(\"server (/vehicle/nbt/nbt_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 + +} \ No newline at end of file diff --git a/NA_PROD/slo/VCIS_GEN3_NBT_Weather_Requests.tf b/NA_PROD/slo/VCIS_GEN3_NBT_Weather_Requests.tf new file mode 100644 index 0000000..54e1359 --- /dev/null +++ b/NA_PROD/slo/VCIS_GEN3_NBT_Weather_Requests.tf @@ -0,0 +1,57 @@ +module VCIS_GEN3_NBT_Weather_Requests { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VCIS-GEN3 - NBT Weather - Requests" + description = "Success rate of vehicle nbt 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 (/vehicle/nbt/nbt_weather) - vcis-information - prod~"), tag(~"Environment:PROD~")), + entityName.in(~"/vehicle/nbt/nbt_weather/servlet/splitscreen~", + ~"/vehicle/nbt/nbt_weather/servlet/clockWeatherSplitscreen~", + ~"/vehicle/nbt/nbt_weather/servlet/widget~", + ~"/vehicle/nbt/nbt_weather/servlet/start~", + ~"/vehicle/nbt/nbt_weather/servlet/app~", + ~"/vehicle/nbt/nbt_weather/servlet/geocoder~", + ~"/vehicle/nbt/nbt_weather/servlet/commoni18n~", + ~"/vehicle/nbt/nbt_weather/app.appcache~", + ~"/vehicle/nbt/nbt_weather/servlet/browserCache~")"))))) + :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 (/vehicle/nbt/nbt_weather) - vcis-information - prod~"), tag(~"Environment:PROD~")), + entityName.in(~"/vehicle/nbt/nbt_weather/servlet/splitscreen~", + ~"/vehicle/nbt/nbt_weather/servlet/clockWeatherSplitscreen~", + ~"/vehicle/nbt/nbt_weather/servlet/widget~", + ~"/vehicle/nbt/nbt_weather/servlet/start~", + ~"/vehicle/nbt/nbt_weather/servlet/app~", + ~"/vehicle/nbt/nbt_weather/servlet/geocoder~", + ~"/vehicle/nbt/nbt_weather/servlet/commoni18n~", + ~"/vehicle/nbt/nbt_weather/app.appcache~", + ~"/vehicle/nbt/nbt_weather/servlet/browserCache~")"))))) + :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 + +} \ No newline at end of file