diff --git a/CN_PROD/slo/Wirkkette__Login (Vehicle)__-_Reliability_of_key_requests.tf b/CN_PROD/slo/Wirkkette__Login (Vehicle)__-_Reliability_of_key_requests.tf new file mode 100644 index 0000000..87da415 --- /dev/null +++ b/CN_PROD/slo/Wirkkette__Login (Vehicle)__-_Reliability_of_key_requests.tf @@ -0,0 +1,55 @@ +module Wirkkette__Login (Vehicle)__-_Reliability_of_key_requests { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "Wirkkette \"Login (Vehicle)\" - Reliability of key requests" + description = "CoCo-QM-Report_Draft" + + + #entity selector object + filter = "" + + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT +(100)*((builtin:service.keyRequest.errors.server.successCount:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"TokenResource - cac - prod~", + ~"CredentialInfoResource - cac - prod~" + ) + ) + ,entityName.in( + ~"POST authorize refresh_token~", + ~"POST authorize password~", + ~"POST authorize device_code~", + ~"validateUser~" + )"))))):splitBy()) + / + (builtin:service.keyRequest.count.server:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"TokenResource - cac - prod~", + ~"CredentialInfoResource - cac - prod~" + ) + ) + ,entityName.in( + ~"POST authorize refresh_token~", + ~"POST authorize password~", + ~"POST authorize device_code~", + ~"validateUser~" + )"))))):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/EMEA_PROD/slo/Wirkkette__FTS_Service__-_Reliability_of_key_requests.tf b/EMEA_PROD/slo/Wirkkette__FTS_Service__-_Reliability_of_key_requests.tf index 1e0047c..a7f56b6 100644 --- a/EMEA_PROD/slo/Wirkkette__FTS_Service__-_Reliability_of_key_requests.tf +++ b/EMEA_PROD/slo/Wirkkette__FTS_Service__-_Reliability_of_key_requests.tf @@ -5,7 +5,7 @@ module Wirkkette__FTS_Service__-_Reliability_of_key_requests { name = "Wirkkette \"FTS Service\" - Reliability of key requests" - description = "CoCo-QM-Report_Vehicle" + description = "CoCo-QM-Report_Draft" diff --git a/EMEA_PROD/slo/Wirkkette__Login (Vehicle)__-_Reliability_of_key_requests.tf b/EMEA_PROD/slo/Wirkkette__Login (Vehicle)__-_Reliability_of_key_requests.tf new file mode 100644 index 0000000..87da415 --- /dev/null +++ b/EMEA_PROD/slo/Wirkkette__Login (Vehicle)__-_Reliability_of_key_requests.tf @@ -0,0 +1,55 @@ +module Wirkkette__Login (Vehicle)__-_Reliability_of_key_requests { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "Wirkkette \"Login (Vehicle)\" - Reliability of key requests" + description = "CoCo-QM-Report_Draft" + + + #entity selector object + filter = "" + + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT +(100)*((builtin:service.keyRequest.errors.server.successCount:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"TokenResource - cac - prod~", + ~"CredentialInfoResource - cac - prod~" + ) + ) + ,entityName.in( + ~"POST authorize refresh_token~", + ~"POST authorize password~", + ~"POST authorize device_code~", + ~"validateUser~" + )"))))):splitBy()) + / + (builtin:service.keyRequest.count.server:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"TokenResource - cac - prod~", + ~"CredentialInfoResource - cac - prod~" + ) + ) + ,entityName.in( + ~"POST authorize refresh_token~", + ~"POST authorize password~", + ~"POST authorize device_code~", + ~"validateUser~" + )"))))):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/Wirkkette__Login (Vehicle)__-_Reliability_of_key_requests.tf b/NA_PROD/slo/Wirkkette__Login (Vehicle)__-_Reliability_of_key_requests.tf new file mode 100644 index 0000000..87da415 --- /dev/null +++ b/NA_PROD/slo/Wirkkette__Login (Vehicle)__-_Reliability_of_key_requests.tf @@ -0,0 +1,55 @@ +module Wirkkette__Login (Vehicle)__-_Reliability_of_key_requests { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "Wirkkette \"Login (Vehicle)\" - Reliability of key requests" + description = "CoCo-QM-Report_Draft" + + + #entity selector object + filter = "" + + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT +(100)*((builtin:service.keyRequest.errors.server.successCount:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"TokenResource - cac - prod~", + ~"CredentialInfoResource - cac - prod~" + ) + ) + ,entityName.in( + ~"POST authorize refresh_token~", + ~"POST authorize password~", + ~"POST authorize device_code~", + ~"validateUser~" + )"))))):splitBy()) + / + (builtin:service.keyRequest.count.server:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"TokenResource - cac - prod~", + ~"CredentialInfoResource - cac - prod~" + ) + ) + ,entityName.in( + ~"POST authorize refresh_token~", + ~"POST authorize password~", + ~"POST authorize device_code~", + ~"validateUser~" + )"))))):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