diff --git a/CN_PROD/slo/TP_Mobile_CD_Store.tf b/CN_PROD/slo/TP_Mobile_CD_Store.tf new file mode 100644 index 0000000..bff49e1 --- /dev/null +++ b/CN_PROD/slo/TP_Mobile_CD_Store.tf @@ -0,0 +1,42 @@ +module TP_Mobile_CD_Store { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "TP_Mobile_CD_Store" + + description = "CoCo-QM-Report_Mobile" + + + + #entity selector object + filter = "" + + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT +(100)-(builtin:service.keyRequest.errors.fivexx.rate:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), +fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"StoreOfferResourceV6 - am-store - prod~", + ~"CdStoreOfferResource - am-store - prod~" + ) + ) + ,entityName.in( + ~"getOffersAndPortfolio~", + ~"bookedAndBookableCDServices~", + ~"bookedAndBookableCDServices 1~" + )"))))):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/CN_PROD/slo/TP_Vehicle_CD_Store.tf b/CN_PROD/slo/TP_Vehicle_CD_Store.tf new file mode 100644 index 0000000..57fd596 --- /dev/null +++ b/CN_PROD/slo/TP_Vehicle_CD_Store.tf @@ -0,0 +1,42 @@ +module TP_Vehicle_CD_Store { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "TP_Vehicle_CD_Store" + + description = "CoCo-QM-Report_Vehicle" + + + + #entity selector object + filter = "" + + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT +(100)-(builtin:service.keyRequest.errors.fivexx.rate:filter(and(in("dt.entity.service_method",entitySelector("type(service_method), +fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"StoreOfferResourceV6 - am-store - prod~", + ~"CdStoreOfferResource - am-store - prod~" + ) + ) + ,entityName.in( + ~"getOffersAndPortfolio~", + ~"bookedAndBookableCDServices~", + ~"bookedAndBookableCDServices 1~" + )")))):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/CN_PROD/slo/TP_Vehicle_ConnectedMusic.tf b/CN_PROD/slo/TP_Vehicle_ConnectedMusic.tf new file mode 100644 index 0000000..216b6d3 --- /dev/null +++ b/CN_PROD/slo/TP_Vehicle_ConnectedMusic.tf @@ -0,0 +1,54 @@ +module TP_Vehicle_ConnectedMusic { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "TP_Vehicle_ConnectedMusic" + description = "CoCo-QM-Report_Vehicle" + + + #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( + in( + "dt.entity.service_method" + ,entitySelector( + "type(service_method) + ,entityName(~"Vehicle_Successful_ResponseCode~")" +)))):splitBy() +/ +(builtin:service.keyRequest.errors.server.successCount:filter( + and( + in( + "dt.entity.service_method" + ,entitySelector( + "type(service_method) + ,entityName(~"Vehicle_Successful_ResponseCode~")" +)))):splitBy() + + + builtin:service.keyRequest.errors.server.successCount:filter( + and( + in( + "dt.entity.service_method" + ,entitySelector( + "type(service_method) + ,entityName(~"Vehicle_Failed_ResponseCode~")" + )))):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/CN_PROD/slo/TP_Vehicle_Personalization.tf b/CN_PROD/slo/TP_Vehicle_Personalization.tf new file mode 100644 index 0000000..c1f937f --- /dev/null +++ b/CN_PROD/slo/TP_Vehicle_Personalization.tf @@ -0,0 +1,51 @@ +module TP_Vehicle_Personalization { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "TP_Vehicle_Personalization" + description = "CoCo-QM-Report_Vehicle" + + + #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( + ~"Perseus (/service) - cub-personalization - prod~" + ) + ) + ,entityName.in( + ~"GET /service/api/vehicle/v1/gcid/[UUID]/vin//pds~", + ~"PUT /service/api/vehicle/v1/gcid/[UUID]/vin//pds~", + ~"createAssociationForGcidAndVin~" + )"))))):splitBy()) + / + (builtin:service.keyRequest.count.server:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"Perseus (/service) - cub-personalization - prod~" + ) + ) + ,entityName.in( + ~"GET /service/api/vehicle/v1/gcid/[UUID]/vin//pds~", + ~"PUT /service/api/vehicle/v1/gcid/[UUID]/vin//pds~", + ~"createAssociationForGcidAndVin~" + )"))))):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/CN_PROD/slo/TP_Vehicle_RTTI.tf b/CN_PROD/slo/TP_Vehicle_RTTI.tf new file mode 100644 index 0000000..1f694f4 --- /dev/null +++ b/CN_PROD/slo/TP_Vehicle_RTTI.tf @@ -0,0 +1,40 @@ +module TP_Vehicle_RTTI { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "TP_Vehicle_RTTI" + + description = "CoCo-QM-Report_Vehicle" + + + #entity selector object + filter = "" + + + #metric expression of the calculation as done in data explorer ui + metric_expression = </pds~", + ~"PUT /service/api/vehicle/v1/gcid/[UUID]/vin//pds~", + ~"createAssociationForGcidAndVin~" + )"))))):splitBy()) + / + (builtin:service.keyRequest.count.server:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"Perseus (/service) - cub-personalization - prod~" + ) + ) + ,entityName.in( + ~"GET /service/api/vehicle/v1/gcid/[UUID]/vin//pds~", + ~"PUT /service/api/vehicle/v1/gcid/[UUID]/vin//pds~", + ~"createAssociationForGcidAndVin~" + )"))))):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/TP_Vehicle_RSU.tf b/EMEA_PROD/slo/TP_Vehicle_RSU.tf new file mode 100644 index 0000000..aad5cf6 --- /dev/null +++ b/EMEA_PROD/slo/TP_Vehicle_RSU.tf @@ -0,0 +1,76 @@ +module TP_Vehicle_RSU { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "TP_Vehicle_RSU" + + description = "CoCo-QM-Report_Vehicle" + + + + #entity selector object + filter = "" + + #metric expression of the calculation as done in data explorer ui + metric_expression = </pds~", + ~"PUT /service/api/vehicle/v1/gcid/[UUID]/vin//pds~", + ~"createAssociationForGcidAndVin~" + )"))))):splitBy()) + / + (builtin:service.keyRequest.count.server:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"Perseus (/service) - cub-personalization - prod~" + ) + ) + ,entityName.in( + ~"GET /service/api/vehicle/v1/gcid/[UUID]/vin//pds~", + ~"PUT /service/api/vehicle/v1/gcid/[UUID]/vin//pds~", + ~"createAssociationForGcidAndVin~" + )"))))):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/TP_Vehicle_RSU.tf b/NA_PROD/slo/TP_Vehicle_RSU.tf new file mode 100644 index 0000000..8564850 --- /dev/null +++ b/NA_PROD/slo/TP_Vehicle_RSU.tf @@ -0,0 +1,77 @@ +module TP_Vehicle_RSU { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "TP_Vehicle_RSU" + + description = "CoCo-QM-Report_Vehicle" + + + + #entity selector object + filter = "" + + + #metric expression of the calculation as done in data explorer ui + metric_expression = <