diff --git a/CN_PROD/slo/ICES_-_FestiveModeContentAPI.tf b/CN_PROD/slo/ICES_-_FestiveModeContentAPI.tf new file mode 100644 index 0000000..362d77d --- /dev/null +++ b/CN_PROD/slo/ICES_-_FestiveModeContentAPI.tf @@ -0,0 +1,33 @@ +module ICES_-_FestiveModeContentAPI { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "ICES - FestiveModeContentAPI" + + description = "FestiveModeContentAPI" + + + + #entity selector object + filter = "type(\"SERVICE\"),entityName(\"FestiveModeContentAPI\"),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/CN_PROD/slo/ICES_FestivalModeContentAPI_getFestiveContent.tf b/CN_PROD/slo/ICES_FestivalModeContentAPI_getFestiveContent.tf new file mode 100644 index 0000000..a3923c5 --- /dev/null +++ b/CN_PROD/slo/ICES_FestivalModeContentAPI_getFestiveContent.tf @@ -0,0 +1,50 @@ +module ICES_FestiveModeContentAPI_getFestival { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "ICES - FestiveModeContentAPI - getFestival" + description = "FestiveModeContentAPI_getFestiveModeContent_success_rate" + + + #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( + ~"FestiveModeContentApi~" + ), + tag(~"Environment:PROD~") + ) + ,entityName.in( + ~"getFestiveModeContent~" + )"))))):splitBy()) + / + (builtin:service.keyRequest.count.server:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"FestiveModeContentApi~" + ), + tag(~"Environment:PROD~") + ) + ,entityName.in( + ~"getFestiveModeContent~" + )"))))):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/ICES_-_FestiveModeContentAPI.tf b/EMEA_PROD/slo/ICES_-_FestiveModeContentAPI.tf new file mode 100644 index 0000000..362d77d --- /dev/null +++ b/EMEA_PROD/slo/ICES_-_FestiveModeContentAPI.tf @@ -0,0 +1,33 @@ +module ICES_-_FestiveModeContentAPI { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "ICES - FestiveModeContentAPI" + + description = "FestiveModeContentAPI" + + + + #entity selector object + filter = "type(\"SERVICE\"),entityName(\"FestiveModeContentAPI\"),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/ICES_FestivalModeContentAPI_getFestiveContent.tf b/EMEA_PROD/slo/ICES_FestivalModeContentAPI_getFestiveContent.tf new file mode 100644 index 0000000..a3923c5 --- /dev/null +++ b/EMEA_PROD/slo/ICES_FestivalModeContentAPI_getFestiveContent.tf @@ -0,0 +1,50 @@ +module ICES_FestiveModeContentAPI_getFestival { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "ICES - FestiveModeContentAPI - getFestival" + description = "FestiveModeContentAPI_getFestiveModeContent_success_rate" + + + #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( + ~"FestiveModeContentApi~" + ), + tag(~"Environment:PROD~") + ) + ,entityName.in( + ~"getFestiveModeContent~" + )"))))):splitBy()) + / + (builtin:service.keyRequest.count.server:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"FestiveModeContentApi~" + ), + tag(~"Environment:PROD~") + ) + ,entityName.in( + ~"getFestiveModeContent~" + )"))))):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/ICES_-_FestiveModeContentAPI.tf b/NA_PROD/slo/ICES_-_FestiveModeContentAPI.tf new file mode 100644 index 0000000..362d77d --- /dev/null +++ b/NA_PROD/slo/ICES_-_FestiveModeContentAPI.tf @@ -0,0 +1,33 @@ +module ICES_-_FestiveModeContentAPI { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "ICES - FestiveModeContentAPI" + + description = "FestiveModeContentAPI" + + + + #entity selector object + filter = "type(\"SERVICE\"),entityName(\"FestiveModeContentAPI\"),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/ICES_FestivalModeContentAPI_getFestiveContent.tf b/NA_PROD/slo/ICES_FestivalModeContentAPI_getFestiveContent.tf new file mode 100644 index 0000000..a3923c5 --- /dev/null +++ b/NA_PROD/slo/ICES_FestivalModeContentAPI_getFestiveContent.tf @@ -0,0 +1,50 @@ +module ICES_FestiveModeContentAPI_getFestival { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "ICES - FestiveModeContentAPI - getFestival" + description = "FestiveModeContentAPI_getFestiveModeContent_success_rate" + + + #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( + ~"FestiveModeContentApi~" + ), + tag(~"Environment:PROD~") + ) + ,entityName.in( + ~"getFestiveModeContent~" + )"))))):splitBy()) + / + (builtin:service.keyRequest.count.server:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"FestiveModeContentApi~" + ), + tag(~"Environment:PROD~") + ) + ,entityName.in( + ~"getFestiveModeContent~" + )"))))):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 + +}