From 3d52379f97c7394e05e3be3209c637c544518ab6 Mon Sep 17 00:00:00 2001 From: Patryk Gudalewicz Date: Wed, 5 Apr 2023 21:25:47 +0200 Subject: [PATCH] Adding simplified SLOs for CN --- CN_PROD/slo/Simplified_TP_Mobile_CD_Store.tf | 24 +++++++++ .../slo/Simplified_TP_Mobile_DigitalKey.tf | 24 +++++++++ CN_PROD/slo/Simplified_TP_Mobile_Login.tf | 25 ++++++++++ CN_PROD/slo/Simplified_TP_Mobile_Mapping.tf | 27 ++++++++++ .../Simplified_TP_Mobile_PersonalFavorites.tf | 24 +++++++++ CN_PROD/slo/Simplified_TP_Mobile_RSU.tf | 24 +++++++++ CN_PROD/slo/Simplified_TP_Mobile_Remote360.tf | 25 ++++++++++ .../Simplified_TP_Mobile_RemoteServices.tf | 24 +++++++++ ...Simplified_TP_Mobile_Send2VehicleLegacy.tf | 22 +++++++++ .../Simplified_TP_Mobile_Send2VehicleMGU.tf | 23 +++++++++ .../slo/Simplified_TP_Mobile_VehicleData.tf | 25 ++++++++++ .../slo/Simplified_TP_Mobile_VehicleList.tf | 24 +++++++++ .../Simplified_TP_Vehicle_AppDistribution.tf | 25 ++++++++++ CN_PROD/slo/Simplified_TP_Vehicle_CD_Store.tf | 26 ++++++++++ .../Simplified_TP_Vehicle_ConnectedMusic.tf | 36 ++++++++++++++ CN_PROD/slo/Simplified_TP_Vehicle_FTS.tf | 23 +++++++++ CN_PROD/slo/Simplified_TP_Vehicle_Login.tf | 25 ++++++++++ .../Simplified_TP_Vehicle_Personalization.tf | 25 ++++++++++ CN_PROD/slo/Simplified_TP_Vehicle_Podcast.tf | 29 +++++++++++ .../slo/Simplified_TP_Vehicle_Provisioning.tf | 31 ++++++++++++ CN_PROD/slo/Simplified_TP_Vehicle_RSU.tf | 28 +++++++++++ CN_PROD/slo/Simplified_TP_Vehicle_RTTI.tf | 22 +++++++++ .../slo/Simplified_TP_Vehicle_SmartParking.tf | 27 ++++++++++ .../slo/Simplified_TP_Vehicle_SmartRefuel.tf | 29 +++++++++++ CN_PROD/slo/Simplified_TP_Vehicle_Speech.tf | 26 ++++++++++ CN_PROD/slo/Simplified_TP_Vehicle_TMPP.tf | 27 ++++++++++ .../slo/Simplified_TP_Vehicle_Teleservices.tf | 49 +++++++++++++++++++ .../slo/Simplified_TP_Vehicle_TmallGenie.tf | 25 ++++++++++ CN_PROD/slo/Simplified_TP_Vehicle_eCall.tf | 32 ++++++++++++ CN_PROD/slo/Simplified_TP_Vehicle_xCall.tf | 29 +++++++++++ 30 files changed, 805 insertions(+) create mode 100644 CN_PROD/slo/Simplified_TP_Mobile_CD_Store.tf create mode 100644 CN_PROD/slo/Simplified_TP_Mobile_DigitalKey.tf create mode 100644 CN_PROD/slo/Simplified_TP_Mobile_Login.tf create mode 100644 CN_PROD/slo/Simplified_TP_Mobile_Mapping.tf create mode 100644 CN_PROD/slo/Simplified_TP_Mobile_PersonalFavorites.tf create mode 100644 CN_PROD/slo/Simplified_TP_Mobile_RSU.tf create mode 100644 CN_PROD/slo/Simplified_TP_Mobile_Remote360.tf create mode 100644 CN_PROD/slo/Simplified_TP_Mobile_RemoteServices.tf create mode 100644 CN_PROD/slo/Simplified_TP_Mobile_Send2VehicleLegacy.tf create mode 100644 CN_PROD/slo/Simplified_TP_Mobile_Send2VehicleMGU.tf create mode 100644 CN_PROD/slo/Simplified_TP_Mobile_VehicleData.tf create mode 100644 CN_PROD/slo/Simplified_TP_Mobile_VehicleList.tf create mode 100644 CN_PROD/slo/Simplified_TP_Vehicle_AppDistribution.tf create mode 100644 CN_PROD/slo/Simplified_TP_Vehicle_CD_Store.tf create mode 100644 CN_PROD/slo/Simplified_TP_Vehicle_ConnectedMusic.tf create mode 100644 CN_PROD/slo/Simplified_TP_Vehicle_FTS.tf create mode 100644 CN_PROD/slo/Simplified_TP_Vehicle_Login.tf create mode 100644 CN_PROD/slo/Simplified_TP_Vehicle_Personalization.tf create mode 100644 CN_PROD/slo/Simplified_TP_Vehicle_Podcast.tf create mode 100644 CN_PROD/slo/Simplified_TP_Vehicle_Provisioning.tf create mode 100644 CN_PROD/slo/Simplified_TP_Vehicle_RSU.tf create mode 100644 CN_PROD/slo/Simplified_TP_Vehicle_RTTI.tf create mode 100644 CN_PROD/slo/Simplified_TP_Vehicle_SmartParking.tf create mode 100644 CN_PROD/slo/Simplified_TP_Vehicle_SmartRefuel.tf create mode 100644 CN_PROD/slo/Simplified_TP_Vehicle_Speech.tf create mode 100644 CN_PROD/slo/Simplified_TP_Vehicle_TMPP.tf create mode 100644 CN_PROD/slo/Simplified_TP_Vehicle_Teleservices.tf create mode 100644 CN_PROD/slo/Simplified_TP_Vehicle_TmallGenie.tf create mode 100644 CN_PROD/slo/Simplified_TP_Vehicle_eCall.tf create mode 100644 CN_PROD/slo/Simplified_TP_Vehicle_xCall.tf diff --git a/CN_PROD/slo/Simplified_TP_Mobile_CD_Store.tf b/CN_PROD/slo/Simplified_TP_Mobile_CD_Store.tf new file mode 100644 index 00000000..0b32b1b3 --- /dev/null +++ b/CN_PROD/slo/Simplified_TP_Mobile_CD_Store.tf @@ -0,0 +1,24 @@ +#SIMPLIFIED +resource "dynatrace_slo" "Simplified_TP_Mobile_CD_Store" { + name = "Simplified_TP_Mobile_CD_Store" + description = "Simplified SLOs" + #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~" + ))"))))):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/Simplified_TP_Mobile_DigitalKey.tf b/CN_PROD/slo/Simplified_TP_Mobile_DigitalKey.tf new file mode 100644 index 00000000..d4a6a650 --- /dev/null +++ b/CN_PROD/slo/Simplified_TP_Mobile_DigitalKey.tf @@ -0,0 +1,24 @@ +#SIMPLIFIED +resource "dynatrace_slo" "Simplified_TP_Mobile_DigitalKey" { + name = "Simplified_TP_Mobile_DigitalKey" + description = "Simplified SLOs" + #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( + ~"TrackApi - smc - PROD~", + ~"digital-key-composite-service - PROD~" + ))"))))):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/Simplified_TP_Mobile_Login.tf b/CN_PROD/slo/Simplified_TP_Mobile_Login.tf new file mode 100644 index 00000000..5565f12f --- /dev/null +++ b/CN_PROD/slo/Simplified_TP_Mobile_Login.tf @@ -0,0 +1,25 @@ +#SIMPLIFIED +resource "dynatrace_slo" "Simplified_TP_Mobile_Login" { + name = "Simplified_TP_Mobile_Login" + description = "Simplified SLOs" + #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( + ~"btc-user-composite-service - PROD~", + ~"btc-cn-connected-oauth-service - PROD~" + ) + )"))))):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/Simplified_TP_Mobile_Mapping.tf b/CN_PROD/slo/Simplified_TP_Mobile_Mapping.tf new file mode 100644 index 00000000..1daddabb --- /dev/null +++ b/CN_PROD/slo/Simplified_TP_Mobile_Mapping.tf @@ -0,0 +1,27 @@ +#SIMPLIFIED +resource "dynatrace_slo" "Simplified_TP_Mobile_Mapping" { + name = "Simplified_TP_Mobile_Mapping" + description = "Simplified SLOs" + #entity selector object + filter = "" + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT +(100)-(builtin:service.keyRequest.errors.server.rate:filter( + and(or(in("dt.entity.service_method", + entitySelector( + "type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"btc-user-composite-service - PROD~", + ~"vehicle-mapping-composite-service - PROD~" + ))"))))):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/Simplified_TP_Mobile_PersonalFavorites.tf b/CN_PROD/slo/Simplified_TP_Mobile_PersonalFavorites.tf new file mode 100644 index 00000000..d77bd482 --- /dev/null +++ b/CN_PROD/slo/Simplified_TP_Mobile_PersonalFavorites.tf @@ -0,0 +1,24 @@ +#SIMPLIFIED +resource "dynatrace_slo" "Simplified_TP_Mobile_PersonalFavorites" { + name = "Simplified_TP_Mobile_PersonalFavorites" + description = "Simplified SLOs" + #entity selector object + filter = "" + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT + (100)-(builtin:service.keyRequest.errors.server.rate:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"btc-destination-composite-service - PROD~" + ))"))))):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/Simplified_TP_Mobile_RSU.tf b/CN_PROD/slo/Simplified_TP_Mobile_RSU.tf new file mode 100644 index 00000000..67e961d1 --- /dev/null +++ b/CN_PROD/slo/Simplified_TP_Mobile_RSU.tf @@ -0,0 +1,24 @@ +#SIMPLIFIED +resource "dynatrace_slo" "Simplified_TP_Mobile_RSU" { + name = "Simplified_TP_Mobile_RSU" + description = "Simplified SLOs" + #entity selector object + filter = "" + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT +(100)-(builtin:service.keyRequest.errors.server.rate:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"RemoteSoftwareUpgrade.WebApp - PROD~" + ))"))))):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/Simplified_TP_Mobile_Remote360.tf b/CN_PROD/slo/Simplified_TP_Mobile_Remote360.tf new file mode 100644 index 00000000..4b8b30a3 --- /dev/null +++ b/CN_PROD/slo/Simplified_TP_Mobile_Remote360.tf @@ -0,0 +1,25 @@ +#SIMPLIFIED +resource "dynatrace_slo" "Simplified_TP_Mobile_Remote360" { + name = "Simplified_TP_Mobile_Remote360" + description = "Simplified SLOs" + #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( + ~"remote-360-composite-service - PROD~" + ) + )"))))):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/Simplified_TP_Mobile_RemoteServices.tf b/CN_PROD/slo/Simplified_TP_Mobile_RemoteServices.tf new file mode 100644 index 00000000..cc92ee2f --- /dev/null +++ b/CN_PROD/slo/Simplified_TP_Mobile_RemoteServices.tf @@ -0,0 +1,24 @@ +#SIMPLIFIED +resource "dynatrace_slo" "Simplified_TP_Mobile_RemoteServices" { + name = "Simplified_TP_Mobile_RemoteServices" + description = "Simplified SLOs" + #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( + ~"btc-vehicle-remote-commands-composite-service - PROD~" + ) + )"))))):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/Simplified_TP_Mobile_Send2VehicleLegacy.tf b/CN_PROD/slo/Simplified_TP_Mobile_Send2VehicleLegacy.tf new file mode 100644 index 00000000..17a83b6a --- /dev/null +++ b/CN_PROD/slo/Simplified_TP_Mobile_Send2VehicleLegacy.tf @@ -0,0 +1,22 @@ +#SIMPLIFIED +resource "dynatrace_slo" "Simplified_TP_Mobile_Send2VehicleLegacy" { + name = "Simplified_TP_Mobile_Send2VehicleLegacy" + description = "Simplified SLOs" + #entity selector object + filter = "" + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT +(100)-(builtin:service.errors.server.rate:filter(and(or(in("dt.entity.service", + entitySelector("type(service), + entityName.in( + ~"LegacyPoiApi - msgsvc - prod~")"))))):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/Simplified_TP_Mobile_Send2VehicleMGU.tf b/CN_PROD/slo/Simplified_TP_Mobile_Send2VehicleMGU.tf new file mode 100644 index 00000000..ccbdf1c8 --- /dev/null +++ b/CN_PROD/slo/Simplified_TP_Mobile_Send2VehicleMGU.tf @@ -0,0 +1,23 @@ +#SIMPLIFIED +resource "dynatrace_slo" "Simplified_TP_Mobile_Send2VehicleMGU" { + name = "Simplified_TP_Mobile_Send2VehicleMGU" + description = "Simplified SLOs" + #entity selector object + filter = "" + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT +(100)-(builtin:service.keyRequest.errors.server.rate:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"TripService - PROD~" + ))"))))):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/Simplified_TP_Mobile_VehicleData.tf b/CN_PROD/slo/Simplified_TP_Mobile_VehicleData.tf new file mode 100644 index 00000000..72571293 --- /dev/null +++ b/CN_PROD/slo/Simplified_TP_Mobile_VehicleData.tf @@ -0,0 +1,25 @@ +#SIMPLIFIED +resource "dynatrace_slo" "Simplified_TP_Mobile_VehicleData" { + name = "Simplified_TP_Mobile_VehicleData" + description = "Simplified SLOs" + #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( + ~"btc-vehicle-composite-service - PROD~", + ~"VehicleService - PROD~" + ))")))):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/Simplified_TP_Mobile_VehicleList.tf b/CN_PROD/slo/Simplified_TP_Mobile_VehicleList.tf new file mode 100644 index 00000000..4ea664da --- /dev/null +++ b/CN_PROD/slo/Simplified_TP_Mobile_VehicleList.tf @@ -0,0 +1,24 @@ +#SIMPLIFIED +resource "dynatrace_slo" "Simplified_TP_Mobile_VehicleList" { + name = "Simplified_TP_Mobile_VehicleList" + description = "Simplified SLOs" + #entity selector object + filter = "" + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT + (100)-(builtin:service.keyRequest.errors.server.rate:filter(and(or(in("dt.entity.service_method", + entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"btc-vehicle-composite-service - PROD~" + ))"))))):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/Simplified_TP_Vehicle_AppDistribution.tf b/CN_PROD/slo/Simplified_TP_Vehicle_AppDistribution.tf new file mode 100644 index 00000000..8544ce19 --- /dev/null +++ b/CN_PROD/slo/Simplified_TP_Vehicle_AppDistribution.tf @@ -0,0 +1,25 @@ +#SIMPLIFIED +resource "dynatrace_slo" "Simplified_TP_Vehicle_AppDistribution" { + name = "Simplified_TP_Vehicle_AppDistribution" + description = "Simplified SLOs" + #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( + ~"AppsServiceV1 - id5-app - prod~", + ~"AppVersionsResource - app-distribution - prod~", + ~"ReleaseNotesResource - app-distribution - prod~" + ))"))))):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/Simplified_TP_Vehicle_CD_Store.tf b/CN_PROD/slo/Simplified_TP_Vehicle_CD_Store.tf new file mode 100644 index 00000000..0044a02e --- /dev/null +++ b/CN_PROD/slo/Simplified_TP_Vehicle_CD_Store.tf @@ -0,0 +1,26 @@ +#SIMPLIFIED +resource "dynatrace_slo" "Simplified_TP_Vehicle_CD_Store" { + name = "Simplified_TP_Vehicle_CD_Store" + description = "Simplified SLOs" + #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~" + ))")))):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/Simplified_TP_Vehicle_ConnectedMusic.tf b/CN_PROD/slo/Simplified_TP_Vehicle_ConnectedMusic.tf new file mode 100644 index 00000000..e6357194 --- /dev/null +++ b/CN_PROD/slo/Simplified_TP_Vehicle_ConnectedMusic.tf @@ -0,0 +1,36 @@ +#SIMPLIFIED +resource "dynatrace_slo" "Simplified_TP_Vehicle_ConnectedMusic" { + name = "Simplified_TP_Vehicle_ConnectedMusic" + description = "Simplified SLOs" + #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.contains(~"Vehicle_Successful_ResponseCode~")" +)))):splitBy() +/ +(builtin:service.keyRequest.count.server:filter( + and( + in( + "dt.entity.service_method" + ,entitySelector( + "type(service_method) + ,entityName.in(~"Vehicle_Successful_ResponseCode~",~"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/Simplified_TP_Vehicle_FTS.tf b/CN_PROD/slo/Simplified_TP_Vehicle_FTS.tf new file mode 100644 index 00000000..91a3395c --- /dev/null +++ b/CN_PROD/slo/Simplified_TP_Vehicle_FTS.tf @@ -0,0 +1,23 @@ +#SIMPLIFIED +resource "dynatrace_slo" "Simplified_TP_Vehicle_FTS" { + name = "Simplified_TP_Vehicle_FTS" + description = "Simplified SLOs" + #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( + ~"POIs~" + ))")))):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/Simplified_TP_Vehicle_Login.tf b/CN_PROD/slo/Simplified_TP_Vehicle_Login.tf new file mode 100644 index 00000000..8283aacb --- /dev/null +++ b/CN_PROD/slo/Simplified_TP_Vehicle_Login.tf @@ -0,0 +1,25 @@ +#SIMPLIFIED +resource "dynatrace_slo" "Simplified_TP_Vehicle_Login" { + name = "Simplified_TP_Vehicle_Login" + description = "Simplified SLOs" + #entity selector object + filter = "" + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT +(100)-(builtin:service.keyRequest.errors.server.rate:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"TokenResource - cac - prod~", + ~"CredentialInfoResource - cac - prod~" + ))"))))):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/Simplified_TP_Vehicle_Personalization.tf b/CN_PROD/slo/Simplified_TP_Vehicle_Personalization.tf new file mode 100644 index 00000000..40f11d78 --- /dev/null +++ b/CN_PROD/slo/Simplified_TP_Vehicle_Personalization.tf @@ -0,0 +1,25 @@ +#SIMPLIFIED +resource "dynatrace_slo" "Simplified_Vehicle_Personalization" { + name = "Simplified_TP_Vehicle_Personalization" + description = "Simplified SLOs" + #entity selector object + filter = "" + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT +(100)-(builtin:service.keyRequest.errors.server.rate:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"Perseus (/service) - cub-personalization - prod~" + ))"))))):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/Simplified_TP_Vehicle_Podcast.tf b/CN_PROD/slo/Simplified_TP_Vehicle_Podcast.tf new file mode 100644 index 00000000..410bb923 --- /dev/null +++ b/CN_PROD/slo/Simplified_TP_Vehicle_Podcast.tf @@ -0,0 +1,29 @@ +#SIMPLIFIED +resource "dynatrace_slo" "Simplified_TP_Vehicle_Podcast" { + name = "Simplified_TP_Vehicle_Podcast" + description = "Simplified SLOs" + #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( + ~"XimalayaContentApi - avs~", + ~"XimalayaLoginApi - avs~", + ~"XimalayaOpenContentApi - avs~", + ~"XimalayaPersonalApi - avs~", + ~"XimalayaSearchApi - avs~" + ))"))))):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/Simplified_TP_Vehicle_Provisioning.tf b/CN_PROD/slo/Simplified_TP_Vehicle_Provisioning.tf new file mode 100644 index 00000000..56a98b53 --- /dev/null +++ b/CN_PROD/slo/Simplified_TP_Vehicle_Provisioning.tf @@ -0,0 +1,31 @@ +#SIMPLIFIED +resource "dynatrace_slo" "Simplified_TP_Vehicle_Provisioning" { + name = "Simplified_TP_Vehicle_Provisioning" + description = "Simplified SLOs" + #entity selector object + filter = "" + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT +(100)-(builtin:service.keyRequest.errors.server.rate:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"WorkshopProvisioningService - vps-prov - cn~", + ~"MQSession$FacadeMessageListener - vps-prov - cn~", + ~"MQSession$FacadeMessageListener - vps-trigger - cn~", + ~"VpsJoynrApi - vps-prov - cn~", + ~"MQSession$FacadeMessageListener - noptrigger - prod~", + ~"ProvisioningService - nopprov - prod~", + ~"NOP-Provisioning (/nop-prov) - nopprov - prod~" + ))"))))):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/Simplified_TP_Vehicle_RSU.tf b/CN_PROD/slo/Simplified_TP_Vehicle_RSU.tf new file mode 100644 index 00000000..06808b1b --- /dev/null +++ b/CN_PROD/slo/Simplified_TP_Vehicle_RSU.tf @@ -0,0 +1,28 @@ +#SIMPLIFIED +resource "dynatrace_slo" "Simplified_Vehicle_RSU" { + name = "Simplified_TP_Vehicle_RSU" + description = "Simplified SLOs" + #entity selector object + filter = "" + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT +(100)-(builtin:service.keyRequest.errors.server.rate:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"UpdateRequestResource - rsu - prod~", + ~"UpdateManifestResource - rsu - prod~", + ~"SendReportResource - rsu - prod~", + ~"MessageEndpointProxy - rsu - prod~" + ))"))))):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/Simplified_TP_Vehicle_RTTI.tf b/CN_PROD/slo/Simplified_TP_Vehicle_RTTI.tf new file mode 100644 index 00000000..cfca3193 --- /dev/null +++ b/CN_PROD/slo/Simplified_TP_Vehicle_RTTI.tf @@ -0,0 +1,22 @@ +#SIMPLIFIED +resource "dynatrace_slo" "Simplified_Vehicle_RTTI" { + name = "Simplified_TP_Vehicle_RTTI" + description = "Simplified SLOs" + #entity selector object + filter = "" + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT + (100)-(builtin:service.errors.fivexx.rate:filter(and(or(in("dt.entity.service",entitySelector("type(service), + entityName.equals( + ~"Netty on 0.0.0.0:8080 - rtti - prod~" + )"))))):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/Simplified_TP_Vehicle_SmartParking.tf b/CN_PROD/slo/Simplified_TP_Vehicle_SmartParking.tf new file mode 100644 index 00000000..73a04f48 --- /dev/null +++ b/CN_PROD/slo/Simplified_TP_Vehicle_SmartParking.tf @@ -0,0 +1,27 @@ +#SIMPLIFIED +resource "dynatrace_slo" "Simplified_TP_Vehicle_SmartParking" { + name = "Simplified_TP_Vehicle_SmartParking" + description = "Simplified SLOs" + #entity selector object + filter = "" + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT + (100)-(builtin:service.keyRequest.errors.server.rate:filter(and(in("dt.entity.service_method",entitySelector("type(service_method), + entityName.in( + ~"/sppid7/parkingfinder/v1/EstimatedTimeArrival/getETA~", + ~"/parkingfinder/v2.0/getParkingLots~" + )")))):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/Simplified_TP_Vehicle_SmartRefuel.tf b/CN_PROD/slo/Simplified_TP_Vehicle_SmartRefuel.tf new file mode 100644 index 00000000..5dc28915 --- /dev/null +++ b/CN_PROD/slo/Simplified_TP_Vehicle_SmartRefuel.tf @@ -0,0 +1,29 @@ +#SIMPLIFIED +resource "dynatrace_slo" "Simplified_TP_Vehicle_SmartRefuel" { + name = "Simplified_TP_Vehicle_SmartRefuel" + description = "Simplified SLOs" + #entity selector object + filter = "type(\"SERVICE_METHOD\")" + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT +(100)-(builtin:service.keyRequest.errors.server.rate:filter( + and(or(in( + "dt.entity.service_method", + entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.contains(~"omcsmtrflce20q3~"),mzName(~"CN_OMC_PROD~" + ))"))))):splitBy():sum:auto:sort(value(sum,descending))) +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/Simplified_TP_Vehicle_Speech.tf b/CN_PROD/slo/Simplified_TP_Vehicle_Speech.tf new file mode 100644 index 00000000..148273b2 --- /dev/null +++ b/CN_PROD/slo/Simplified_TP_Vehicle_Speech.tf @@ -0,0 +1,26 @@ +#SIMPLIFIED +resource "dynatrace_slo" "Simplified_Vehicle_Speech" { + name = "Simplified_TP_Vehicle_Speech" + description = "Simplified SLOs" + #entity selector object + filter = "" + # Error Code 502 in HVD service will be excluded from the SLO. + # Therefore the metric server side errors was used for calculation. + metric_expression = <<-EOT + (100)-(builtin:service.keyRequest.errors.server.rate:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"hvd (/hvd) - ipa-backend-cn - prod~", + ~"server (/htts) - ipa-backend-cn - prod~" + ))"))))):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/Simplified_TP_Vehicle_TMPP.tf b/CN_PROD/slo/Simplified_TP_Vehicle_TMPP.tf new file mode 100644 index 00000000..6a0713de --- /dev/null +++ b/CN_PROD/slo/Simplified_TP_Vehicle_TMPP.tf @@ -0,0 +1,27 @@ +#SIMPLIFIED +resource "dynatrace_slo" "Simplified_TP_Vehicle_TMPP" { + name = "Simplified_TP_Vehicle_TMPP" + description = "Simplified SLOs" + #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( + ~"CarRegistrationApi - iis-cc-cn - prod~", + ~"ChannelAdminApi - iis-cc-cn - prod~", + ~"ManifestCarApi - iis-cc-cn - prod~", + ~"ManifestDomainApi - iis-cc-cn - prod~" + ))"))))):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/Simplified_TP_Vehicle_Teleservices.tf b/CN_PROD/slo/Simplified_TP_Vehicle_Teleservices.tf new file mode 100644 index 00000000..e97d42be --- /dev/null +++ b/CN_PROD/slo/Simplified_TP_Vehicle_Teleservices.tf @@ -0,0 +1,49 @@ +#SIMPLIFIED +resource "dynatrace_slo" "Simplified_TP_Vehicle_Teleservices" { + name = "Simplified_TP_Vehicle_Teleservices" + description = "Simplified SLOs" + #entity selector object + filter = "" + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT +(100)-(builtin:service.errors.total.rate:filter(and(in("dt.entity.service",entitySelector("type(service), + entityName.in( + ~"ifs-001 (Kinesis) CCM - teleservices - prod~", + ~"ifs-001 (Kinesis) TyreWsIncoming - IN - teleservices - prod~", + ~"ifs-001 (Kinesis) TyreDiIncoming - IN - teleservices - prod~", + ~"ifs-003 (JOYNR) triggerPdmContainerUpdate/notifyPdmContainerStatus - IN/OUT - teleservices - prod~", + ~"ifs-003 (JOYNR) triggerWhitelistUpdate/notifyWhitelistStatus - IN/OUT - wlupdater - prod~", + ~"ifs-003 (JOYNR) triggerStandardOdfUpdate/notifyOdfStatus - IN/OUT - wlupdater - prod~", + ~"ifs-003 (JOYNR) start/stop/notifyTemporaryOdfStatus - INT/OUT - wlupdater - prod~", + ~"ifs-007 (JOYNR) requestPdmResult/notifyPdmResult - IN/OUT - teleservices - prod~", + ~"ifs-002 (JOYNR) request/notifyKeyData - IN/OUT - teleservices - prod~", + ~"ifs-002 (JOYNR) notifyRSUStatus - IN - teleservices - prod~", + ~"VDLM_scallservice - VDLM_scallservice - ifs-002 (JOYNR) notifyMaintenanceStatus - IN - prod~", + ~"VDLM_scallservice - VDLM_scallservice - ifs-002 (JOYNR) requestMaintenanceStatus/confirmMaintenanceStatus - OUT - prod~", + ~"ifs-005 (JOYNR) notify/confirmBatteryStatus - IN/OUT - teleservices - prod~", + ~"ifs-007 (JOYNR) requestDiagResult/notifyDiagResult - IN/OUT - teleservices - prod~", + ~"ifs-005 (SQS) TscsCallTopic - IN - teleservices - prod~", + ~"ifs-006 (SQS) TsddCallTopic - IN - teleservices - prod~", + ~"ifs-010 (SQS) RtcadCallTopic - IN - teleservices - prod~", + ~"VDLM_seam - ifs-004 (SQS) ServiceDemand - IN - teleservices - prod~", + ~"VDLM_seam - ifs-004 (SQS) ServiceDemand - IN - teleservices - prod~", + ~"ifs-003 (MQS) MguItsnIn/Out (ClassificationRequest/Response) - IN/OUT - teleservices - prod~", + ~"ifs-003 (MQS) MguItsnIn/Out (DiagnosisRequest/Response) - IN/OUT - teleservices - prod~", + ~"ifs-005 (MQS) BCallHandlerIstaIn/Out - IN/OUT - teleservices - prod~", + ~"ifs-001 (SQS) BCallIn/Out - IN/OUT - teleservices - prod~", + ~"VDLM_ts-asc - ifs-001 (SQS) AscIn/Out - IN/OUT - prod~", + ~"InternalApiResourceV2 - teleservices - prod~", + ~"VDLM_rtchandler - ifs-010 (SQS) RtcTeleXIn/Out - IN/OUT - prod~", + ~"ckf-cn.bmwgroup.net~" + )")))):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/Simplified_TP_Vehicle_TmallGenie.tf b/CN_PROD/slo/Simplified_TP_Vehicle_TmallGenie.tf new file mode 100644 index 00000000..974d4137 --- /dev/null +++ b/CN_PROD/slo/Simplified_TP_Vehicle_TmallGenie.tf @@ -0,0 +1,25 @@ +#SIMPLIFIED +resource "dynatrace_slo" "Simplified_TP_Vehicle_TmallGenie" { + name = "Simplified_TP_Vehicle_TmallGenie" + description = "Simplified SLOs" + #entity selector object + filter = "" + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT + (100)-(builtin:service.errors.server.rate:filter(in("dt.entity.service", + entitySelector("type(~"SERVICE~"),entityName.in( + ~"cn-tmall-genie-composite-service - PROD~", + ~"hvd (/hvd) - ipa-backend-cn - prod~" + )"))):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/Simplified_TP_Vehicle_eCall.tf b/CN_PROD/slo/Simplified_TP_Vehicle_eCall.tf new file mode 100644 index 00000000..538a48e5 --- /dev/null +++ b/CN_PROD/slo/Simplified_TP_Vehicle_eCall.tf @@ -0,0 +1,32 @@ +#SIMPLIFIED +resource "dynatrace_slo" "Simplified_TP_Vehicle_eCall" { + name = "Simplified_TP_Vehicle_eCall" + description = "Simplified SLOs" + #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( + ~"VoiceV2Resource - ngtp-cs - prod~", + ~"CallRoutingResource - crs - prod~", + ~"NgtpUplinkEventResource - ngtp-cs - prod~", + ~"V1Api - PROD~", + ~"CallMgmtApiResourceV1 - b*vvoice - prod~", + ~"ISmsGatewayBF - ecs - prod~", + ~"EcsApiController - PROD~", + ~"VehicleVinV2BF - ecs - prod~" + ))")))):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/Simplified_TP_Vehicle_xCall.tf b/CN_PROD/slo/Simplified_TP_Vehicle_xCall.tf new file mode 100644 index 00000000..ebf66f4e --- /dev/null +++ b/CN_PROD/slo/Simplified_TP_Vehicle_xCall.tf @@ -0,0 +1,29 @@ +#SIMPLIFIED +resource "dynatrace_slo" "Simplified_TP_Vehicle_xCall" { + name = "Simplified_TP_Vehicle_xCall" + description = "Simplified SLOs" + #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( + ~"VoiceV2Resource - ngtp-cs - prod~", + ~"CallRoutingResource - crs - prod~", + ~"NgtpUplinkEventResource - ngtp-cs - prod~", + ~"V1Api - PROD~", + ~"XcsApiController - PROD~", + ~"CallMgmtApiResourceV1 - b*vvoice - prod~" + ))")))):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