module TP_Mobile_DigitalKey { source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" name = "TP_Mobile_DigitalKey" description = "2.0 SLO Mobile" #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( ~"TrackApi - smc - PROD~", ~"digital-key-composite-service - PROD~" ) ) ,entityName.in( ~"trackKey~", ~"manageKey~", ~"GET /api/v1/digitalkey//password~", ~"GET /api/v1/digitalkey//pairing~" )"))))):splitBy()) / (builtin:service.keyRequest.count.server:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), fromRelationship.isServiceMethodOfService( type(~"SERVICE~"),entityName.in( ~"TrackApi - smc - PROD~", ~"digital-key-composite-service - PROD~" ) ) ,entityName.in( ~"trackKey~", ~"manageKey~", ~"GET /api/v1/digitalkey//password~", ~"GET /api/v1/digitalkey//pairing~" )"))))):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 } output "TP_Mobile_DigitalKey_metric" { value = module.TP_Mobile_DigitalKey.metric_expression }