guidelines / templates redefined
parent
9e26586760
commit
6b69d64273
|
|
@ -62,14 +62,14 @@ Once the pull request is approved and **BMW Monaco** executes, all the configura
|
|||
|
||||
- *Alerting Profiles*
|
||||
- Used to filter specific problems related to your applications.
|
||||
- For Prod environements, PROD and E2E dashboards will be generated.
|
||||
- For PreProd environments, INT dashboard will be generated.
|
||||
- For Prod environements, PROD and E2E alerting profiles will be generated.
|
||||
- For PreProd environments, INT alerting profiles will be generated.
|
||||
- Learn how to configure/improve your Alerting Profiles [here](link) ([Do i need to configure it?](link))
|
||||
|
||||
- *Notification System*
|
||||
- For each Alerting Profile, it's possible to set up a separate Notification System.
|
||||
- For Prod environements, PROD and E2E dashboards will be generated.
|
||||
- For PreProd environments, INT dashboard will be generated.
|
||||
- For Prod environements, PROD and E2E notification systems will be generated.
|
||||
- For PreProd environments, INT notification systems will be generated.
|
||||
- Notification system is not configured by default. If you want to enable it for your application please follow this [link](link).
|
||||
- Learn how to configure/improve your Notification System [here](link) ([Do i need to configure it?](link))
|
||||
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ To monitor your application with Dynatrace, please follow these steps:
|
|||
|
||||
6. (optional) Configure Notification System
|
||||
- Dynatrace AI automatically detects anomalies in your applications and generate problems, visible within the UI. Dynatrace offers several out-of-the-box integrations with problem notification systems such as Email, MS Teams and ITSM.
|
||||
- Notification system is not configured by default. If you want to enable it for your application please follow this [link](https://atc.bmwgroup.net/bitbucket/projects/OPAPM/repos/cd_e2e_monitoring_config/browse/onboarding/CD_newComponentTag/notification/README.md).
|
||||
- Notification systems are not configured by default. If you want to enable them for your application, please follow this [link](https://atc.bmwgroup.net/bitbucket/projects/OPAPM/repos/cd_e2e_monitoring_config/browse/onboarding/CD_newComponentTag/notification/README.md).
|
||||
7. (optional) Add databases to Management Zone
|
||||
- The script described in step 5 will create the configuration for all entities related to your application (Host, Processes, Services) but not the databases.
|
||||
- To add your databases into Dynatrace you need to add an extra rule to the [Component.json](https://atc.bmwgroup.net/bitbucket/projects/OPAPM/repos/cd_e2e_monitoring_config/browse/BMW-Dynatrace-config/00_Global-Config/auto-tag/Component.json) file. You can use [this](link) example to understand exactly what you have to do.
|
||||
|
|
@ -44,14 +44,14 @@ To monitor your application with Dynatrace, please follow these steps:
|
|||
### Results
|
||||
|
||||
**Important**
|
||||
- Changes (in dashboards, alerting profiles or any type of configuration) must be done via a pull request. Changing a dashboard just in the environment, will cause that it will be overwritten by Monaco.
|
||||
- Configuration changes (like in dashboards, alerting profiles) must be done via a pull request. Changing a dashboard just in the environment, will cause that it will be overwritten by Monaco.
|
||||
- Once the pull request is approved and **BMW Monaco** executes, all the configuration created in the previous steps will be visible in Dynatrace:
|
||||
|
||||
#### Primary Configuration
|
||||
|
||||
- *Management Zone*
|
||||
- Used to filter entities.
|
||||
- Can be used to navigate the environment, filtering in dashboards and alerting profiles.
|
||||
- Can be used to navigate the environment, filtering within dashboards and alerting profiles.
|
||||
- You can use the generated MZ clicking on the filter at the top-right corner within the Dynatrace UI.
|
||||
- Learn how to configure/improve your Management Zone [here](link) ([Do i need to configure it?](link))
|
||||
|
||||
|
|
|
|||
Binary file not shown.
|
Before Width: | Height: | Size: 144 KiB After Width: | Height: | Size: 117 KiB |
25
onboard.sh
25
onboard.sh
|
|
@ -1,19 +1,14 @@
|
|||
#!/bin/bash
|
||||
|
||||
cp -R onboarding/CD_newComponentTag/ BMW-Dynatrace-config/
|
||||
mv BMW-Dynatrace-config/CD_newComponentTag BMW-Dynatrace-config/$1
|
||||
cp -R onboarding/CD_managementZone/ BMW-Dynatrace-config/
|
||||
mv BMW-Dynatrace-config/CD_managementZone BMW-Dynatrace-config/$1
|
||||
|
||||
mv BMW-Dynatrace-config/$1/alerting-profile/newComponentTag.json BMW-Dynatrace-config/$1/alerting-profile/$2.json
|
||||
mv BMW-Dynatrace-config/$1/management-zone/newComponentTag.json BMW-Dynatrace-config/$1/management-zone/$2.json
|
||||
mv BMW-Dynatrace-config/$1/dashboard/newComponentTag.json BMW-Dynatrace-config/$1/dashboard/$2.json
|
||||
mv BMW-Dynatrace-config/$1/notification/newComponentTag.json BMW-Dynatrace-config/$1/notification/$2.json
|
||||
sed -i "s/CD_managementZone/$1/g" BMW-Dynatrace-config/$1/alerting-profile/alerting-profile.yaml
|
||||
sed -i "s/CD_managementZone/$1/g" BMW-Dynatrace-config/$1/management-zone/management-zone.yaml
|
||||
sed -i "s/CD_managementZone/$1/g" BMW-Dynatrace-config/$1/dashboard/dashboard.yaml
|
||||
sed -i "s/CD_managementZone/$1/g" BMW-Dynatrace-config/$1/notification/notification.yaml
|
||||
|
||||
sed -i "s/CD_newComponentTag/$1/g" BMW-Dynatrace-config/$1/alerting-profile/alerting-profile.yaml
|
||||
sed -i "s/CD_newComponentTag/$1/g" BMW-Dynatrace-config/$1/management-zone/management-zone.yaml
|
||||
sed -i "s/CD_newComponentTag/$1/g" BMW-Dynatrace-config/$1/dashboard/dashboard.yaml
|
||||
sed -i "s/CD_newComponentTag/$1/g" BMW-Dynatrace-config/$1/notification/notification.yaml
|
||||
|
||||
sed -i "s/newComponentTag/$2/g" BMW-Dynatrace-config/$1/alerting-profile/alerting-profile.yaml
|
||||
sed -i "s/newComponentTag/$2/g" BMW-Dynatrace-config/$1/management-zone/management-zone.yaml
|
||||
sed -i "s/newComponentTag/$2/g" BMW-Dynatrace-config/$1/dashboard/dashboard.yaml
|
||||
sed -i "s/newComponentTag/$2/g" BMW-Dynatrace-config/$1/notification/notification.yaml
|
||||
sed -i "s/managementZone/$2/g" BMW-Dynatrace-config/$1/alerting-profile/alerting-profile.yaml
|
||||
sed -i "s/managementZone/$2/g" BMW-Dynatrace-config/$1/management-zone/management-zone.yaml
|
||||
sed -i "s/managementZone/$2/g" BMW-Dynatrace-config/$1/dashboard/dashboard.yaml
|
||||
sed -i "s/managementZone/$2/g" BMW-Dynatrace-config/$1/notification/notification.yaml
|
||||
|
|
@ -0,0 +1,82 @@
|
|||
config:
|
||||
- CDnewComponentTag-PROD: default.json
|
||||
- CDnewComponentTag-E2E: default.json
|
||||
- CDnewComponentTag-INT: default.json
|
||||
|
||||
#Prod dashboards for EMEA/NA/CN
|
||||
CDnewComponentTag-PROD:
|
||||
- name: CD_newComponentTag PROD
|
||||
- tag: newComponentTag
|
||||
- mzId: CD_managementZone/management-zone/CDnewComponentTag.id
|
||||
- env: PROD
|
||||
- skipDeployment: "true"
|
||||
CDnewComponentTag-PROD.EMEA-Prod:
|
||||
- name: CD_newComponentTag PROD
|
||||
- tag: newComponentTag
|
||||
- mzId: CD_managementZone/management-zone/CDnewComponentTag.id
|
||||
- env: PROD
|
||||
- skipDeployment: "false"
|
||||
CDnewComponentTag-PROD.NA-Prod:
|
||||
- name: CD_newComponentTag PROD
|
||||
- tag: newComponentTag
|
||||
- mzId: CD_managementZone/management-zone/CDnewComponentTag.id
|
||||
- env: PROD
|
||||
- skipDeployment: "false"
|
||||
CDnewComponentTag-PROD.CN-Prod:
|
||||
- name: CD_newComponentTag PROD
|
||||
- tag: newComponentTag
|
||||
- mzId: CD_managementZone/management-zone/CDnewComponentTag.id
|
||||
- env: PROD
|
||||
- skipDeployment: "false"
|
||||
|
||||
#E2E dashboards for EMEA/NA/CN
|
||||
CDnewComponentTag-E2E:
|
||||
- name: CD_newComponentTag E2E
|
||||
- tag: newComponentTag
|
||||
- mzId: CD_managementZone/management-zone/CDnewComponentTag.id
|
||||
- env: E2E
|
||||
- skipDeployment: "true"
|
||||
CDnewComponentTag-E2E.EMEA-Prod:
|
||||
- name: CD_newComponentTag E2E
|
||||
- tag: newComponentTag
|
||||
- mzId: CD_managementZone/management-zone/CDnewComponentTag.id
|
||||
- env: E2E
|
||||
- skipDeployment: "false"
|
||||
CDnewComponentTag-E2E.NA-Prod:
|
||||
- name: CD_newComponentTag E2E
|
||||
- tag: newComponentTag
|
||||
- mzId: CD_managementZone/management-zone/CDnewComponentTag.id
|
||||
- env: E2E
|
||||
- skipDeployment: "false"
|
||||
CDnewComponentTag-E2E.CN-Prod:
|
||||
- name: CD_newComponentTag E2E
|
||||
- tag: newComponentTag
|
||||
- mzId: CD_managementZone/management-zone/CDnewComponentTag.id
|
||||
- env: E2E
|
||||
- skipDeployment: "false"
|
||||
|
||||
#INT dashboards for EMEA/NA/CN
|
||||
CDnewComponentTag-INT:
|
||||
- name: CD_newComponentTag INT
|
||||
- tag: newComponentTag
|
||||
- mzId: CD_managementZone/management-zone/CDnewComponentTag.id
|
||||
- env: INT
|
||||
- skipDeployment: "true"
|
||||
CDnewComponentTag-INT.EMEA-PreProd:
|
||||
- name: CD_newComponentTag INT
|
||||
- tag: newComponentTag
|
||||
- mzId: CD_managementZone/management-zone/CDnewComponentTag.id
|
||||
- env: INT
|
||||
- skipDeployment: "false"
|
||||
CDnewComponentTag-INT.NA-PreProd:
|
||||
- name: CD_newComponentTag INT
|
||||
- tag: newComponentTag
|
||||
- mzId: CD_managementZone/management-zone/CDnewComponentTag.id
|
||||
- env: INT
|
||||
- skipDeployment: "false"
|
||||
CDnewComponentTag-INT.CN-PreProd:
|
||||
- name: CD_newComponentTag INT
|
||||
- tag: newComponentTag
|
||||
- mzId: CD_managementZone/management-zone/CDnewComponentTag.id
|
||||
- env: INT
|
||||
- skipDeployment: "false"
|
||||
|
|
@ -0,0 +1,103 @@
|
|||
{
|
||||
"displayName": "{{.name}}",
|
||||
"eventTypeFilters": [],
|
||||
"managementZoneId": "{{.mzId}}",
|
||||
"mzId": "{{.mzId}}",
|
||||
"rules": [
|
||||
{
|
||||
"delayInMinutes": 0,
|
||||
"severityLevel": "AVAILABILITY",
|
||||
"tagFilter": {
|
||||
"includeMode": "INCLUDE_ALL",
|
||||
"tagFilters": [
|
||||
{
|
||||
"context": "CONTEXTLESS",
|
||||
"key": "Component",
|
||||
"value": "{{.tag}}"
|
||||
},
|
||||
{
|
||||
"context": "CONTEXTLESS",
|
||||
"key": "Environment",
|
||||
"value": "{{.env}}"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"delayInMinutes": 10,
|
||||
"severityLevel": "ERROR",
|
||||
"tagFilter": {
|
||||
"includeMode": "INCLUDE_ALL",
|
||||
"tagFilters": [
|
||||
{
|
||||
"context": "CONTEXTLESS",
|
||||
"key": "Component",
|
||||
"value": "{{.tag}}"
|
||||
},
|
||||
{
|
||||
"context": "CONTEXTLESS",
|
||||
"key": "Environment",
|
||||
"value": "{{.env}}"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"delayInMinutes": 30,
|
||||
"severityLevel": "PERFORMANCE",
|
||||
"tagFilter": {
|
||||
"includeMode": "INCLUDE_ALL",
|
||||
"tagFilters": [
|
||||
{
|
||||
"context": "CONTEXTLESS",
|
||||
"key": "Component",
|
||||
"value": "{{.tag}}"
|
||||
},
|
||||
{
|
||||
"context": "CONTEXTLESS",
|
||||
"key": "Environment",
|
||||
"value": "{{.env}}"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"delayInMinutes": 30,
|
||||
"severityLevel": "RESOURCE_CONTENTION",
|
||||
"tagFilter": {
|
||||
"includeMode": "INCLUDE_ALL",
|
||||
"tagFilters": [
|
||||
{
|
||||
"context": "CONTEXTLESS",
|
||||
"key": "Component",
|
||||
"value": "{{.tag}}"
|
||||
},
|
||||
{
|
||||
"context": "CONTEXTLESS",
|
||||
"key": "Environment",
|
||||
"value": "{{.env}}"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"delayInMinutes": 10,
|
||||
"severityLevel": "CUSTOM_ALERT",
|
||||
"tagFilter": {
|
||||
"includeMode": "INCLUDE_ALL",
|
||||
"tagFilters": [
|
||||
{
|
||||
"context": "CONTEXTLESS",
|
||||
"key": "Component",
|
||||
"value": "{{.tag}}"
|
||||
},
|
||||
{
|
||||
"context": "CONTEXTLESS",
|
||||
"key": "Environment",
|
||||
"value": "{{.env}}"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
## Custom metrics - Multidimensional Analysis
|
||||
|
||||
In case you want to create a metric from the Multidimensional Analysis view, these are the steps to follow:
|
||||
|
||||
1. Create the metric within the Dynatrace UI using the Mutidimensional Analysis view
|
||||
2. Save the view and create a ticket for the OPAPM team [here](link). Please provide the following information:
|
||||
- View created in the Dynatrace UI
|
||||
- Your Dynatrace configuration folder (i.e. CD_<app_name>)
|
||||
|
||||
The OPAPM team will proceed creating the metric and updating your configuration in monaco.
|
||||
|
|
@ -0,0 +1 @@
|
|||
config:
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
|
||||
## What is a custom service in Dynatrace?
|
||||
- *If your application services aren't built on standard technologies, they may not be recognized out-of-the box.*
|
||||
- *You can monitor these technologies, but you'll need to define them as custom services with specific service entry points.*
|
||||
- *Another use case for custom services are microservices that are used by a larger application that aren't exposed via communication technologies.*
|
||||
|
||||
## How to create a custom service?
|
||||
1. Open the file custom-service-java.yaml.
|
||||
2. Use customService1 as a template. Copy and paste it below, changing the skipDeployment to true.
|
||||
3. Fill up all the remaining inputs with the details of the endpoint you're interested to monitor (className, methodName, etc...)
|
||||
4. Commit and pull request to merge the branch to the master:
|
||||
`git add <changes>`
|
||||
`git commit -m "<app_name> configuration changes"`
|
||||
`git push -u origin <branch>`
|
||||
5. Restart the application where the custom service has been created.
|
||||
6. Check if the custom service appears in Dynatrace.
|
||||
|
||||
Notes:
|
||||
- As this configuration needs a restart, it's better to create it in a non-Prod application.
|
||||
- The custom service will appear in Dynatrace iff there's traffic going through.
|
||||
|
||||
## What if i have multiple classes?
|
||||
1. Clone *template-1-1.json* to a new one called *template-2-1.json*.
|
||||
2. Edit *template-2-1.json* adding a 2nd rule separated with a coma.
|
||||
3. For the 2nd rule, change the name of the {{.values}} to {{.values2}} i.e.
|
||||
4. The template is ready to be used in the YAML file.
|
||||
|
||||
## What if i have multiple methods?
|
||||
1. Same process as before, just call it template-1-2.json
|
||||
2. In this way you can extend to a custom service with n classes and k methods: template-n-k.json
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
config:
|
||||
- customService1: template-1-1.json
|
||||
|
||||
customService1:
|
||||
- name: myJOYNRService
|
||||
- className: com.bmw.cc.conn.this.is.just.an.exampleClasss
|
||||
- methodName: exampleJoynrMethod
|
||||
- returnType: void
|
||||
- skipDeployment: "true"
|
||||
|
|
@ -0,0 +1,23 @@
|
|||
{
|
||||
"enabled": true,
|
||||
"name": "{{.name}}",
|
||||
"processGroups": [],
|
||||
"queueEntryPoint": false,
|
||||
"queueEntryPointType": null,
|
||||
"rules": [
|
||||
{
|
||||
"annotations": [],
|
||||
"className": "{{.className}}",
|
||||
"enabled": true,
|
||||
"fileName": "",
|
||||
"matcher": "EQUALS",
|
||||
"methodRules": [
|
||||
{
|
||||
"argumentTypes": [],
|
||||
"methodName": "{{.methodName}}",
|
||||
"returnType": "{{.returnType}}"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
@ -0,0 +1,55 @@
|
|||
config:
|
||||
- CDnewComponentTag-PROD-E2E: defaultPRODE2E.json
|
||||
- CDnewComponentTag-INT-TEST: defaultINTTEST.json
|
||||
|
||||
#PROD/E2E dashboards for EMEA/NA/CN
|
||||
CDnewComponentTag-PROD-E2E:
|
||||
- name: CD_newComponentTag PROD/E2E
|
||||
- mzName: CD_managementZone/management-zone/CDnewComponentTag.name
|
||||
- mzId: CD_managementZone/management-zone/CDnewComponentTag.id
|
||||
- skipDeployment: "true"
|
||||
CDnewComponentTag-PROD-E2E.EMEA-PROD-E2E:
|
||||
- name: CD_newComponentTag PROD/E2E
|
||||
- mzName: CD_managementZone/management-zone/CDnewComponentTag.name
|
||||
- mzId: CD_managementZone/management-zone/CDnewComponentTag.id
|
||||
- tag: newComponentTag
|
||||
- skipDeployment: "false"
|
||||
CDnewComponentTag-PROD-E2E.NA-PROD-E2E:
|
||||
- name: CD_newComponentTag PROD/E2E
|
||||
- mzName: CD_managementZone/management-zone/CDnewComponentTag.name
|
||||
- mzId: CD_managementZone/management-zone/CDnewComponentTag.id
|
||||
- tag: newComponentTag
|
||||
- skipDeployment: "false"
|
||||
CDnewComponentTag-PROD-E2E.CN-PROD-E2E:
|
||||
- name: CD_newComponentTag PROD/E2E
|
||||
- mzName: CD_managementZone/management-zone/CDnewComponentTag.name
|
||||
- mzId: CD_managementZone/management-zone/CDnewComponentTag.id
|
||||
- tag: newComponentTag
|
||||
- skipDeployment: "false"
|
||||
|
||||
|
||||
#INT/TEST dashboards for EMEA/NA/CN
|
||||
CDnewComponentTag-INT-TEST:
|
||||
- name: CD_newComponentTag INT/TEST
|
||||
- mzName: CD_managementZone/management-zone/CDnewComponentTag.name
|
||||
- mzId: CD_managementZone/management-zone/CDnewComponentTag.id
|
||||
- tag: newComponentTag
|
||||
- skipDeployment: "true"
|
||||
CDnewComponentTag-INT-TEST.EMEA-PreProd:
|
||||
- name: CD_newComponentTag INT/TEST
|
||||
- mzName: CD_managementZone/management-zone/CDnewComponentTag.name
|
||||
- mzId: CD_managementZone/management-zone/CDnewComponentTag.id
|
||||
- tag: newComponentTag
|
||||
- skipDeployment: "false"
|
||||
CDnewComponentTag-INT-TEST.NA-PreProd:
|
||||
- name: CD_newComponentTag INT/TEST
|
||||
- mzName: CD_managementZone/management-zone/CDnewComponentTag.name
|
||||
- mzId: CD_managementZone/management-zone/CDnewComponentTag.id
|
||||
- env: INT
|
||||
- skipDeployment: "false"
|
||||
CDnewComponentTag-INT-TEST.CN-PreProd:
|
||||
- name: CD_newComponentTag INT/TEST
|
||||
- mzName: CD_managementZone/management-zone/CDnewComponentTag.name
|
||||
- mzId: CD_managementZone/management-zone/CDnewComponentTag.id
|
||||
- env: INT
|
||||
- skipDeployment: "false"
|
||||
|
|
@ -0,0 +1,586 @@
|
|||
{
|
||||
"metadata": {
|
||||
"configurationVersions": [
|
||||
3
|
||||
],
|
||||
"clusterVersion": "1.213.116.20210318-174118"
|
||||
},
|
||||
"dashboardMetadata": {
|
||||
"name": "{{.name}}",
|
||||
"shared": false,
|
||||
"owner": "Ignacio.Goldman@partner.bmwgroup.com",
|
||||
"dashboardFilter": {
|
||||
"managementZone": {
|
||||
"id": "{{.mzId}}",
|
||||
"name": "{{.mzName}}"
|
||||
}
|
||||
},
|
||||
"tags": [
|
||||
"{{.mzName}}"
|
||||
]
|
||||
},
|
||||
"tiles": [
|
||||
{
|
||||
"name": "Custom chart",
|
||||
"tileType": "CUSTOM_CHARTING",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 380,
|
||||
"left": 38,
|
||||
"width": 760,
|
||||
"height": 266
|
||||
},
|
||||
"tileFilter": {},
|
||||
"filterConfig": {
|
||||
"type": "MIXED",
|
||||
"customName": "Failure rate (HTTP 4xx/5xx errors)",
|
||||
"defaultName": "Custom chart",
|
||||
"chartConfig": {
|
||||
"legendShown": true,
|
||||
"type": "TIMESERIES",
|
||||
"series": [
|
||||
{
|
||||
"metric": "builtin:service.errors.fourxx.rate",
|
||||
"aggregation": "AVG",
|
||||
"type": "BAR",
|
||||
"entityType": "SERVICE",
|
||||
"dimensions": [],
|
||||
"sortAscending": false,
|
||||
"sortColumn": false,
|
||||
"aggregationRate": "TOTAL"
|
||||
},
|
||||
{
|
||||
"metric": "builtin:service.errors.fivexx.rate",
|
||||
"aggregation": "AVG",
|
||||
"type": "BAR",
|
||||
"entityType": "SERVICE",
|
||||
"dimensions": [],
|
||||
"sortAscending": false,
|
||||
"sortColumn": true,
|
||||
"aggregationRate": "TOTAL"
|
||||
}
|
||||
],
|
||||
"resultMetadata": {
|
||||
"nullbuiltin:service.errors.fivexx.rate|AVG|TOTAL|BAR|SERVICE": {
|
||||
"lastModified": 1595276148986,
|
||||
"customColor": "#ef651f"
|
||||
}
|
||||
}
|
||||
},
|
||||
"filtersPerEntityType": {
|
||||
"SERVICE": {
|
||||
"AUTO_TAGS": [
|
||||
"Environment:INT"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Problems",
|
||||
"tileType": "OPEN_PROBLEMS",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 114,
|
||||
"left": 1596,
|
||||
"width": 152,
|
||||
"height": 152
|
||||
},
|
||||
"tileFilter": {}
|
||||
},
|
||||
{
|
||||
"name": "",
|
||||
"tileType": "SERVICES",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 76,
|
||||
"left": 1064,
|
||||
"width": 228,
|
||||
"height": 190
|
||||
},
|
||||
"tileFilter": {},
|
||||
"filterConfig": {
|
||||
"type": "SERVICE",
|
||||
"customName": "Services",
|
||||
"defaultName": "Services",
|
||||
"chartConfig": {
|
||||
"legendShown": true,
|
||||
"type": "TIMESERIES",
|
||||
"series": [],
|
||||
"resultMetadata": {}
|
||||
},
|
||||
"filtersPerEntityType": {
|
||||
"SERVICE": {
|
||||
"AUTO_TAGS": [
|
||||
"Environment:TEST",
|
||||
"Component:{{.tag}}"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"chartVisible": true
|
||||
},
|
||||
{
|
||||
"name": "Overall Health - INT",
|
||||
"tileType": "HEADER",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 38,
|
||||
"left": 38,
|
||||
"width": 760,
|
||||
"height": 38
|
||||
},
|
||||
"tileFilter": {}
|
||||
},
|
||||
{
|
||||
"name": "Markdown",
|
||||
"tileType": "MARKDOWN",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 684,
|
||||
"left": 38,
|
||||
"width": 1520,
|
||||
"height": 38
|
||||
},
|
||||
"tileFilter": {},
|
||||
"markdown": "---\n"
|
||||
},
|
||||
{
|
||||
"name": "Service1 - TEST",
|
||||
"tileType": "HEADER",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 722,
|
||||
"left": 798,
|
||||
"width": 760,
|
||||
"height": 38
|
||||
},
|
||||
"tileFilter": {}
|
||||
},
|
||||
{
|
||||
"name": "Custom chart",
|
||||
"tileType": "CUSTOM_CHARTING",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 760,
|
||||
"left": 798,
|
||||
"width": 760,
|
||||
"height": 304
|
||||
},
|
||||
"tileFilter": {},
|
||||
"filterConfig": {
|
||||
"type": "MIXED",
|
||||
"customName": "Response time, Throughput and Number of Errors",
|
||||
"defaultName": "Custom chart",
|
||||
"chartConfig": {
|
||||
"legendShown": true,
|
||||
"type": "TIMESERIES",
|
||||
"series": [
|
||||
{
|
||||
"metric": "builtin:service.response.time",
|
||||
"aggregation": "AVG",
|
||||
"type": "LINE",
|
||||
"entityType": "SERVICE",
|
||||
"dimensions": [],
|
||||
"sortAscending": false,
|
||||
"sortColumn": false,
|
||||
"aggregationRate": "TOTAL"
|
||||
},
|
||||
{
|
||||
"metric": "builtin:service.requestCount.total",
|
||||
"aggregation": "NONE",
|
||||
"type": "BAR",
|
||||
"entityType": "SERVICE",
|
||||
"dimensions": [],
|
||||
"sortAscending": false,
|
||||
"sortColumn": false,
|
||||
"aggregationRate": "TOTAL"
|
||||
},
|
||||
{
|
||||
"metric": "builtin:service.errors.total.count",
|
||||
"aggregation": "NONE",
|
||||
"type": "BAR",
|
||||
"entityType": "SERVICE",
|
||||
"dimensions": [],
|
||||
"sortAscending": false,
|
||||
"sortColumn": true,
|
||||
"aggregationRate": "TOTAL"
|
||||
}
|
||||
],
|
||||
"resultMetadata": {
|
||||
"nullbuiltin:service.requestCount.total|NONE|TOTAL|BAR|SERVICE": {
|
||||
"lastModified": 1595275720776,
|
||||
"customColor": "#008cdb"
|
||||
},
|
||||
"nullbuiltin:service.errors.total.count|NONE|TOTAL|BAR|SERVICE": {
|
||||
"lastModified": 1595275955999,
|
||||
"customColor": "#ef651f"
|
||||
},
|
||||
"nullbuiltin:service.response.time|AVG|TOTAL|LINE|SERVICE": {
|
||||
"lastModified": 1595275686773,
|
||||
"customColor": "#b4e5f9"
|
||||
}
|
||||
}
|
||||
},
|
||||
"filtersPerEntityType": {
|
||||
"SERVICE": {
|
||||
"AUTO_TAGS": [
|
||||
"Environment:TEST"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Service1 - INT",
|
||||
"tileType": "HEADER",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 722,
|
||||
"left": 38,
|
||||
"width": 760,
|
||||
"height": 38
|
||||
},
|
||||
"tileFilter": {}
|
||||
},
|
||||
{
|
||||
"name": "Custom chart",
|
||||
"tileType": "CUSTOM_CHARTING",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 760,
|
||||
"left": 38,
|
||||
"width": 760,
|
||||
"height": 304
|
||||
},
|
||||
"tileFilter": {},
|
||||
"filterConfig": {
|
||||
"type": "MIXED",
|
||||
"customName": "Response time, Throughput and Number of Errors",
|
||||
"defaultName": "Custom chart",
|
||||
"chartConfig": {
|
||||
"legendShown": true,
|
||||
"type": "TIMESERIES",
|
||||
"series": [
|
||||
{
|
||||
"metric": "builtin:service.response.time",
|
||||
"aggregation": "AVG",
|
||||
"type": "LINE",
|
||||
"entityType": "SERVICE",
|
||||
"dimensions": [],
|
||||
"sortAscending": false,
|
||||
"sortColumn": false,
|
||||
"aggregationRate": "TOTAL"
|
||||
},
|
||||
{
|
||||
"metric": "builtin:service.requestCount.total",
|
||||
"aggregation": "NONE",
|
||||
"type": "BAR",
|
||||
"entityType": "SERVICE",
|
||||
"dimensions": [],
|
||||
"sortAscending": false,
|
||||
"sortColumn": false,
|
||||
"aggregationRate": "TOTAL"
|
||||
},
|
||||
{
|
||||
"metric": "builtin:service.errors.total.count",
|
||||
"aggregation": "NONE",
|
||||
"type": "BAR",
|
||||
"entityType": "SERVICE",
|
||||
"dimensions": [],
|
||||
"sortAscending": false,
|
||||
"sortColumn": true,
|
||||
"aggregationRate": "TOTAL"
|
||||
}
|
||||
],
|
||||
"resultMetadata": {
|
||||
"nullbuiltin:service.requestCount.total|NONE|TOTAL|BAR|SERVICE": {
|
||||
"lastModified": 1595275720776,
|
||||
"customColor": "#008cdb"
|
||||
},
|
||||
"nullbuiltin:service.errors.total.count|NONE|TOTAL|BAR|SERVICE": {
|
||||
"lastModified": 1595275955999,
|
||||
"customColor": "#ef651f"
|
||||
},
|
||||
"nullbuiltin:service.response.time|AVG|TOTAL|LINE|SERVICE": {
|
||||
"lastModified": 1595275686773,
|
||||
"customColor": "#b4e5f9"
|
||||
}
|
||||
}
|
||||
},
|
||||
"filtersPerEntityType": {
|
||||
"SERVICE": {
|
||||
"AUTO_TAGS": [
|
||||
"Environment:INT"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Custom chart",
|
||||
"tileType": "CUSTOM_CHARTING",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 380,
|
||||
"left": 798,
|
||||
"width": 760,
|
||||
"height": 266
|
||||
},
|
||||
"tileFilter": {},
|
||||
"filterConfig": {
|
||||
"type": "MIXED",
|
||||
"customName": "Failure rate (HTTP 4xx/5xx errors)",
|
||||
"defaultName": "Custom chart",
|
||||
"chartConfig": {
|
||||
"legendShown": true,
|
||||
"type": "TIMESERIES",
|
||||
"series": [
|
||||
{
|
||||
"metric": "builtin:service.errors.fourxx.rate",
|
||||
"aggregation": "AVG",
|
||||
"type": "BAR",
|
||||
"entityType": "SERVICE",
|
||||
"dimensions": [],
|
||||
"sortAscending": false,
|
||||
"sortColumn": false,
|
||||
"aggregationRate": "TOTAL"
|
||||
},
|
||||
{
|
||||
"metric": "builtin:service.errors.fivexx.rate",
|
||||
"aggregation": "AVG",
|
||||
"type": "BAR",
|
||||
"entityType": "SERVICE",
|
||||
"dimensions": [],
|
||||
"sortAscending": false,
|
||||
"sortColumn": true,
|
||||
"aggregationRate": "TOTAL"
|
||||
}
|
||||
],
|
||||
"resultMetadata": {
|
||||
"nullbuiltin:service.errors.fivexx.rate|AVG|TOTAL|BAR|SERVICE": {
|
||||
"lastModified": 1595276148986,
|
||||
"customColor": "#ef651f"
|
||||
}
|
||||
}
|
||||
},
|
||||
"filtersPerEntityType": {
|
||||
"SERVICE": {
|
||||
"AUTO_TAGS": [
|
||||
"Environment:TEST"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Markdown",
|
||||
"tileType": "MARKDOWN",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 304,
|
||||
"left": 38,
|
||||
"width": 1520,
|
||||
"height": 38
|
||||
},
|
||||
"tileFilter": {},
|
||||
"markdown": "---\n"
|
||||
},
|
||||
{
|
||||
"name": "Failure rate - TEST (HTTP 4xx/5xx errors)",
|
||||
"tileType": "HEADER",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 342,
|
||||
"left": 798,
|
||||
"width": 760,
|
||||
"height": 38
|
||||
},
|
||||
"tileFilter": {}
|
||||
},
|
||||
{
|
||||
"name": "Failure rate - INT (HTTP 4xx/5xx errors)",
|
||||
"tileType": "HEADER",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 342,
|
||||
"left": 38,
|
||||
"width": 760,
|
||||
"height": 38
|
||||
},
|
||||
"tileFilter": {}
|
||||
},
|
||||
{
|
||||
"name": "",
|
||||
"tileType": "DATABASES_OVERVIEW",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 76,
|
||||
"left": 570,
|
||||
"width": 228,
|
||||
"height": 190
|
||||
},
|
||||
"tileFilter": {},
|
||||
"filterConfig": {
|
||||
"type": "DATABASE",
|
||||
"customName": "Databases",
|
||||
"defaultName": "Databases",
|
||||
"chartConfig": {
|
||||
"legendShown": true,
|
||||
"type": "TIMESERIES",
|
||||
"series": [],
|
||||
"resultMetadata": {}
|
||||
},
|
||||
"filtersPerEntityType": {
|
||||
"DATABASE": {
|
||||
"AUTO_TAGS": [
|
||||
"Component:{{.tag}}",
|
||||
"Environment:INT"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"chartVisible": true
|
||||
},
|
||||
{
|
||||
"name": "Overall Health - TEST",
|
||||
"tileType": "HEADER",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 38,
|
||||
"left": 798,
|
||||
"width": 760,
|
||||
"height": 38
|
||||
},
|
||||
"tileFilter": {}
|
||||
},
|
||||
{
|
||||
"name": "",
|
||||
"tileType": "DATABASES_OVERVIEW",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 76,
|
||||
"left": 1330,
|
||||
"width": 228,
|
||||
"height": 190
|
||||
},
|
||||
"tileFilter": {},
|
||||
"filterConfig": {
|
||||
"type": "DATABASE",
|
||||
"customName": "Databases",
|
||||
"defaultName": "Databases",
|
||||
"chartConfig": {
|
||||
"legendShown": true,
|
||||
"type": "TIMESERIES",
|
||||
"series": [],
|
||||
"resultMetadata": {}
|
||||
},
|
||||
"filtersPerEntityType": {
|
||||
"DATABASE": {
|
||||
"AUTO_TAGS": [
|
||||
"Environment:TEST",
|
||||
"Component:{{.tag}}"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"chartVisible": true
|
||||
},
|
||||
{
|
||||
"name": "",
|
||||
"tileType": "SERVICES",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 76,
|
||||
"left": 304,
|
||||
"width": 228,
|
||||
"height": 190
|
||||
},
|
||||
"tileFilter": {},
|
||||
"filterConfig": {
|
||||
"type": "SERVICE",
|
||||
"customName": "Services",
|
||||
"defaultName": "Services",
|
||||
"chartConfig": {
|
||||
"legendShown": true,
|
||||
"type": "TIMESERIES",
|
||||
"series": [],
|
||||
"resultMetadata": {}
|
||||
},
|
||||
"filtersPerEntityType": {
|
||||
"SERVICE": {
|
||||
"AUTO_TAGS": [
|
||||
"Component:{{.tag}}",
|
||||
"Environment:INT"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"chartVisible": true
|
||||
},
|
||||
{
|
||||
"name": "",
|
||||
"tileType": "HOSTS",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 76,
|
||||
"left": 798,
|
||||
"width": 228,
|
||||
"height": 190
|
||||
},
|
||||
"tileFilter": {},
|
||||
"filterConfig": {
|
||||
"type": "HOST",
|
||||
"customName": "Hosts",
|
||||
"defaultName": "Hosts",
|
||||
"chartConfig": {
|
||||
"legendShown": true,
|
||||
"type": "TIMESERIES",
|
||||
"series": [],
|
||||
"resultMetadata": {}
|
||||
},
|
||||
"filtersPerEntityType": {
|
||||
"HOST": {
|
||||
"AUTO_TAGS": [
|
||||
"Environment:TEST",
|
||||
"Component:{{.tag}}"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"chartVisible": true
|
||||
},
|
||||
{
|
||||
"name": "",
|
||||
"tileType": "HOSTS",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 76,
|
||||
"left": 38,
|
||||
"width": 228,
|
||||
"height": 190
|
||||
},
|
||||
"tileFilter": {},
|
||||
"filterConfig": {
|
||||
"type": "HOST",
|
||||
"customName": "Hosts",
|
||||
"defaultName": "Hosts",
|
||||
"chartConfig": {
|
||||
"legendShown": true,
|
||||
"type": "TIMESERIES",
|
||||
"series": [],
|
||||
"resultMetadata": {}
|
||||
},
|
||||
"filtersPerEntityType": {
|
||||
"HOST": {
|
||||
"AUTO_TAGS": [
|
||||
"Component:{{.tag}}",
|
||||
"Environment:INT"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"chartVisible": true
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
@ -0,0 +1,586 @@
|
|||
{
|
||||
"metadata": {
|
||||
"configurationVersions": [
|
||||
3
|
||||
],
|
||||
"clusterVersion": "1.213.116.20210318-174118"
|
||||
},
|
||||
"dashboardMetadata": {
|
||||
"name": "{{.name}}",
|
||||
"shared": false,
|
||||
"owner": "Ignacio.Goldman@partner.bmwgroup.com",
|
||||
"dashboardFilter": {
|
||||
"managementZone": {
|
||||
"id": "{{.mzId}}",
|
||||
"name": "{{.mzName}}"
|
||||
}
|
||||
},
|
||||
"tags": [
|
||||
"{{.mzName}}"
|
||||
]
|
||||
},
|
||||
"tiles": [
|
||||
{
|
||||
"name": "Custom chart",
|
||||
"tileType": "CUSTOM_CHARTING",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 380,
|
||||
"left": 38,
|
||||
"width": 760,
|
||||
"height": 266
|
||||
},
|
||||
"tileFilter": {},
|
||||
"filterConfig": {
|
||||
"type": "MIXED",
|
||||
"customName": "Failure rate (HTTP 4xx/5xx errors)",
|
||||
"defaultName": "Custom chart",
|
||||
"chartConfig": {
|
||||
"legendShown": true,
|
||||
"type": "TIMESERIES",
|
||||
"series": [
|
||||
{
|
||||
"metric": "builtin:service.errors.fourxx.rate",
|
||||
"aggregation": "AVG",
|
||||
"type": "BAR",
|
||||
"entityType": "SERVICE",
|
||||
"dimensions": [],
|
||||
"sortAscending": false,
|
||||
"sortColumn": false,
|
||||
"aggregationRate": "TOTAL"
|
||||
},
|
||||
{
|
||||
"metric": "builtin:service.errors.fivexx.rate",
|
||||
"aggregation": "AVG",
|
||||
"type": "BAR",
|
||||
"entityType": "SERVICE",
|
||||
"dimensions": [],
|
||||
"sortAscending": false,
|
||||
"sortColumn": true,
|
||||
"aggregationRate": "TOTAL"
|
||||
}
|
||||
],
|
||||
"resultMetadata": {
|
||||
"nullbuiltin:service.errors.fivexx.rate|AVG|TOTAL|BAR|SERVICE": {
|
||||
"lastModified": 1595276148986,
|
||||
"customColor": "#ef651f"
|
||||
}
|
||||
}
|
||||
},
|
||||
"filtersPerEntityType": {
|
||||
"SERVICE": {
|
||||
"AUTO_TAGS": [
|
||||
"Environment:PROD"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Problems",
|
||||
"tileType": "OPEN_PROBLEMS",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 114,
|
||||
"left": 1596,
|
||||
"width": 152,
|
||||
"height": 152
|
||||
},
|
||||
"tileFilter": {}
|
||||
},
|
||||
{
|
||||
"name": "",
|
||||
"tileType": "SERVICES",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 76,
|
||||
"left": 1064,
|
||||
"width": 228,
|
||||
"height": 190
|
||||
},
|
||||
"tileFilter": {},
|
||||
"filterConfig": {
|
||||
"type": "SERVICE",
|
||||
"customName": "Services",
|
||||
"defaultName": "Services",
|
||||
"chartConfig": {
|
||||
"legendShown": true,
|
||||
"type": "TIMESERIES",
|
||||
"series": [],
|
||||
"resultMetadata": {}
|
||||
},
|
||||
"filtersPerEntityType": {
|
||||
"SERVICE": {
|
||||
"AUTO_TAGS": [
|
||||
"Environment:E2E",
|
||||
"Component:{{.tag}}"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"chartVisible": true
|
||||
},
|
||||
{
|
||||
"name": "Overall Health - PROD",
|
||||
"tileType": "HEADER",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 38,
|
||||
"left": 38,
|
||||
"width": 760,
|
||||
"height": 38
|
||||
},
|
||||
"tileFilter": {}
|
||||
},
|
||||
{
|
||||
"name": "Markdown",
|
||||
"tileType": "MARKDOWN",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 684,
|
||||
"left": 38,
|
||||
"width": 1520,
|
||||
"height": 38
|
||||
},
|
||||
"tileFilter": {},
|
||||
"markdown": "---\n"
|
||||
},
|
||||
{
|
||||
"name": "Service1 - E2E",
|
||||
"tileType": "HEADER",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 722,
|
||||
"left": 798,
|
||||
"width": 760,
|
||||
"height": 38
|
||||
},
|
||||
"tileFilter": {}
|
||||
},
|
||||
{
|
||||
"name": "Custom chart",
|
||||
"tileType": "CUSTOM_CHARTING",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 760,
|
||||
"left": 798,
|
||||
"width": 760,
|
||||
"height": 304
|
||||
},
|
||||
"tileFilter": {},
|
||||
"filterConfig": {
|
||||
"type": "MIXED",
|
||||
"customName": "Response time, Throughput and Number of Errors",
|
||||
"defaultName": "Custom chart",
|
||||
"chartConfig": {
|
||||
"legendShown": true,
|
||||
"type": "TIMESERIES",
|
||||
"series": [
|
||||
{
|
||||
"metric": "builtin:service.response.time",
|
||||
"aggregation": "AVG",
|
||||
"type": "LINE",
|
||||
"entityType": "SERVICE",
|
||||
"dimensions": [],
|
||||
"sortAscending": false,
|
||||
"sortColumn": false,
|
||||
"aggregationRate": "TOTAL"
|
||||
},
|
||||
{
|
||||
"metric": "builtin:service.requestCount.total",
|
||||
"aggregation": "NONE",
|
||||
"type": "BAR",
|
||||
"entityType": "SERVICE",
|
||||
"dimensions": [],
|
||||
"sortAscending": false,
|
||||
"sortColumn": false,
|
||||
"aggregationRate": "TOTAL"
|
||||
},
|
||||
{
|
||||
"metric": "builtin:service.errors.total.count",
|
||||
"aggregation": "NONE",
|
||||
"type": "BAR",
|
||||
"entityType": "SERVICE",
|
||||
"dimensions": [],
|
||||
"sortAscending": false,
|
||||
"sortColumn": true,
|
||||
"aggregationRate": "TOTAL"
|
||||
}
|
||||
],
|
||||
"resultMetadata": {
|
||||
"nullbuiltin:service.requestCount.total|NONE|TOTAL|BAR|SERVICE": {
|
||||
"lastModified": 1595275720776,
|
||||
"customColor": "#008cdb"
|
||||
},
|
||||
"nullbuiltin:service.errors.total.count|NONE|TOTAL|BAR|SERVICE": {
|
||||
"lastModified": 1595275955999,
|
||||
"customColor": "#ef651f"
|
||||
},
|
||||
"nullbuiltin:service.response.time|AVG|TOTAL|LINE|SERVICE": {
|
||||
"lastModified": 1595275686773,
|
||||
"customColor": "#b4e5f9"
|
||||
}
|
||||
}
|
||||
},
|
||||
"filtersPerEntityType": {
|
||||
"SERVICE": {
|
||||
"AUTO_TAGS": [
|
||||
"Environment:E2E"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Service1 - PROD",
|
||||
"tileType": "HEADER",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 722,
|
||||
"left": 38,
|
||||
"width": 760,
|
||||
"height": 38
|
||||
},
|
||||
"tileFilter": {}
|
||||
},
|
||||
{
|
||||
"name": "Custom chart",
|
||||
"tileType": "CUSTOM_CHARTING",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 760,
|
||||
"left": 38,
|
||||
"width": 760,
|
||||
"height": 304
|
||||
},
|
||||
"tileFilter": {},
|
||||
"filterConfig": {
|
||||
"type": "MIXED",
|
||||
"customName": "Response time, Throughput and Number of Errors",
|
||||
"defaultName": "Custom chart",
|
||||
"chartConfig": {
|
||||
"legendShown": true,
|
||||
"type": "TIMESERIES",
|
||||
"series": [
|
||||
{
|
||||
"metric": "builtin:service.response.time",
|
||||
"aggregation": "AVG",
|
||||
"type": "LINE",
|
||||
"entityType": "SERVICE",
|
||||
"dimensions": [],
|
||||
"sortAscending": false,
|
||||
"sortColumn": false,
|
||||
"aggregationRate": "TOTAL"
|
||||
},
|
||||
{
|
||||
"metric": "builtin:service.requestCount.total",
|
||||
"aggregation": "NONE",
|
||||
"type": "BAR",
|
||||
"entityType": "SERVICE",
|
||||
"dimensions": [],
|
||||
"sortAscending": false,
|
||||
"sortColumn": false,
|
||||
"aggregationRate": "TOTAL"
|
||||
},
|
||||
{
|
||||
"metric": "builtin:service.errors.total.count",
|
||||
"aggregation": "NONE",
|
||||
"type": "BAR",
|
||||
"entityType": "SERVICE",
|
||||
"dimensions": [],
|
||||
"sortAscending": false,
|
||||
"sortColumn": true,
|
||||
"aggregationRate": "TOTAL"
|
||||
}
|
||||
],
|
||||
"resultMetadata": {
|
||||
"nullbuiltin:service.requestCount.total|NONE|TOTAL|BAR|SERVICE": {
|
||||
"lastModified": 1595275720776,
|
||||
"customColor": "#008cdb"
|
||||
},
|
||||
"nullbuiltin:service.errors.total.count|NONE|TOTAL|BAR|SERVICE": {
|
||||
"lastModified": 1595275955999,
|
||||
"customColor": "#ef651f"
|
||||
},
|
||||
"nullbuiltin:service.response.time|AVG|TOTAL|LINE|SERVICE": {
|
||||
"lastModified": 1595275686773,
|
||||
"customColor": "#b4e5f9"
|
||||
}
|
||||
}
|
||||
},
|
||||
"filtersPerEntityType": {
|
||||
"SERVICE": {
|
||||
"AUTO_TAGS": [
|
||||
"Environment:PROD"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Custom chart",
|
||||
"tileType": "CUSTOM_CHARTING",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 380,
|
||||
"left": 798,
|
||||
"width": 760,
|
||||
"height": 266
|
||||
},
|
||||
"tileFilter": {},
|
||||
"filterConfig": {
|
||||
"type": "MIXED",
|
||||
"customName": "Failure rate (HTTP 4xx/5xx errors)",
|
||||
"defaultName": "Custom chart",
|
||||
"chartConfig": {
|
||||
"legendShown": true,
|
||||
"type": "TIMESERIES",
|
||||
"series": [
|
||||
{
|
||||
"metric": "builtin:service.errors.fourxx.rate",
|
||||
"aggregation": "AVG",
|
||||
"type": "BAR",
|
||||
"entityType": "SERVICE",
|
||||
"dimensions": [],
|
||||
"sortAscending": false,
|
||||
"sortColumn": false,
|
||||
"aggregationRate": "TOTAL"
|
||||
},
|
||||
{
|
||||
"metric": "builtin:service.errors.fivexx.rate",
|
||||
"aggregation": "AVG",
|
||||
"type": "BAR",
|
||||
"entityType": "SERVICE",
|
||||
"dimensions": [],
|
||||
"sortAscending": false,
|
||||
"sortColumn": true,
|
||||
"aggregationRate": "TOTAL"
|
||||
}
|
||||
],
|
||||
"resultMetadata": {
|
||||
"nullbuiltin:service.errors.fivexx.rate|AVG|TOTAL|BAR|SERVICE": {
|
||||
"lastModified": 1595276148986,
|
||||
"customColor": "#ef651f"
|
||||
}
|
||||
}
|
||||
},
|
||||
"filtersPerEntityType": {
|
||||
"SERVICE": {
|
||||
"AUTO_TAGS": [
|
||||
"Environment:E2E"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Markdown",
|
||||
"tileType": "MARKDOWN",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 304,
|
||||
"left": 38,
|
||||
"width": 1520,
|
||||
"height": 38
|
||||
},
|
||||
"tileFilter": {},
|
||||
"markdown": "---\n"
|
||||
},
|
||||
{
|
||||
"name": "Failure rate - E2E (HTTP 4xx/5xx errors)",
|
||||
"tileType": "HEADER",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 342,
|
||||
"left": 798,
|
||||
"width": 760,
|
||||
"height": 38
|
||||
},
|
||||
"tileFilter": {}
|
||||
},
|
||||
{
|
||||
"name": "Failure rate - PROD (HTTP 4xx/5xx errors)",
|
||||
"tileType": "HEADER",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 342,
|
||||
"left": 38,
|
||||
"width": 760,
|
||||
"height": 38
|
||||
},
|
||||
"tileFilter": {}
|
||||
},
|
||||
{
|
||||
"name": "",
|
||||
"tileType": "DATABASES_OVERVIEW",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 76,
|
||||
"left": 570,
|
||||
"width": 228,
|
||||
"height": 190
|
||||
},
|
||||
"tileFilter": {},
|
||||
"filterConfig": {
|
||||
"type": "DATABASE",
|
||||
"customName": "Databases",
|
||||
"defaultName": "Databases",
|
||||
"chartConfig": {
|
||||
"legendShown": true,
|
||||
"type": "TIMESERIES",
|
||||
"series": [],
|
||||
"resultMetadata": {}
|
||||
},
|
||||
"filtersPerEntityType": {
|
||||
"DATABASE": {
|
||||
"AUTO_TAGS": [
|
||||
"Component:{{.tag}}",
|
||||
"Environment:PROD"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"chartVisible": true
|
||||
},
|
||||
{
|
||||
"name": "Overall Health - E2E",
|
||||
"tileType": "HEADER",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 38,
|
||||
"left": 798,
|
||||
"width": 760,
|
||||
"height": 38
|
||||
},
|
||||
"tileFilter": {}
|
||||
},
|
||||
{
|
||||
"name": "",
|
||||
"tileType": "DATABASES_OVERVIEW",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 76,
|
||||
"left": 1330,
|
||||
"width": 228,
|
||||
"height": 190
|
||||
},
|
||||
"tileFilter": {},
|
||||
"filterConfig": {
|
||||
"type": "DATABASE",
|
||||
"customName": "Databases",
|
||||
"defaultName": "Databases",
|
||||
"chartConfig": {
|
||||
"legendShown": true,
|
||||
"type": "TIMESERIES",
|
||||
"series": [],
|
||||
"resultMetadata": {}
|
||||
},
|
||||
"filtersPerEntityType": {
|
||||
"DATABASE": {
|
||||
"AUTO_TAGS": [
|
||||
"Environment:E2E",
|
||||
"Component:{{.tag}}"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"chartVisible": true
|
||||
},
|
||||
{
|
||||
"name": "",
|
||||
"tileType": "SERVICES",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 76,
|
||||
"left": 304,
|
||||
"width": 228,
|
||||
"height": 190
|
||||
},
|
||||
"tileFilter": {},
|
||||
"filterConfig": {
|
||||
"type": "SERVICE",
|
||||
"customName": "Services",
|
||||
"defaultName": "Services",
|
||||
"chartConfig": {
|
||||
"legendShown": true,
|
||||
"type": "TIMESERIES",
|
||||
"series": [],
|
||||
"resultMetadata": {}
|
||||
},
|
||||
"filtersPerEntityType": {
|
||||
"SERVICE": {
|
||||
"AUTO_TAGS": [
|
||||
"Component:{{.tag}}",
|
||||
"Environment:PROD"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"chartVisible": true
|
||||
},
|
||||
{
|
||||
"name": "",
|
||||
"tileType": "HOSTS",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 76,
|
||||
"left": 798,
|
||||
"width": 228,
|
||||
"height": 190
|
||||
},
|
||||
"tileFilter": {},
|
||||
"filterConfig": {
|
||||
"type": "HOST",
|
||||
"customName": "Hosts",
|
||||
"defaultName": "Hosts",
|
||||
"chartConfig": {
|
||||
"legendShown": true,
|
||||
"type": "TIMESERIES",
|
||||
"series": [],
|
||||
"resultMetadata": {}
|
||||
},
|
||||
"filtersPerEntityType": {
|
||||
"HOST": {
|
||||
"AUTO_TAGS": [
|
||||
"Environment:E2E",
|
||||
"Component:{{.tag}}"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"chartVisible": true
|
||||
},
|
||||
{
|
||||
"name": "",
|
||||
"tileType": "HOSTS",
|
||||
"configured": true,
|
||||
"bounds": {
|
||||
"top": 76,
|
||||
"left": 38,
|
||||
"width": 228,
|
||||
"height": 190
|
||||
},
|
||||
"tileFilter": {},
|
||||
"filterConfig": {
|
||||
"type": "HOST",
|
||||
"customName": "Hosts",
|
||||
"defaultName": "Hosts",
|
||||
"chartConfig": {
|
||||
"legendShown": true,
|
||||
"type": "TIMESERIES",
|
||||
"series": [],
|
||||
"resultMetadata": {}
|
||||
},
|
||||
"filtersPerEntityType": {
|
||||
"HOST": {
|
||||
"AUTO_TAGS": [
|
||||
"Component:{{.tag}}",
|
||||
"Environment:PROD"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"chartVisible": true
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
@ -0,0 +1,74 @@
|
|||
## Management Zones configuration
|
||||
|
||||
### Excluding noisy services
|
||||
|
||||
*If you find services that are not relevant for the analysis, you can exclude them from the MZ.*
|
||||
|
||||
#### HealthResource, PingResource, PrometheusResource services
|
||||
|
||||
*After the deployment of the OneAgent, you will be able to see all your services under Transactions & Services. For many other components,*
|
||||
*we have been required to exclude some noisy services such as HealthResource, PingResource, PrometheusResource*
|
||||
|
||||
**How to exclude HealthResource?**
|
||||
1. Open default.json configuration under the management-zone folder
|
||||
2. Under the `"type": "SERVICE"` rule, add one extra condition:
|
||||
`{
|
||||
` "comparisonInfo": {`
|
||||
` "caseSensitive": true,`
|
||||
` "negate": true,`
|
||||
` "operator": "CONTAINS",`
|
||||
` "type": "STRING",`
|
||||
` "value": "HealthResource"`
|
||||
` },`
|
||||
` "key": {`
|
||||
` "attribute": "SERVICE_NAME"`
|
||||
` }`
|
||||
`}`
|
||||
The rule should look like this:
|
||||
`{`
|
||||
` "conditions": [`
|
||||
` {`
|
||||
` "comparisonInfo": {`
|
||||
` "negate": false,`
|
||||
` "operator": "EQUALS",`
|
||||
` "type": "TAG",`
|
||||
` "value": {`
|
||||
` "context": "CONTEXTLESS",`
|
||||
` "key": "Component",`
|
||||
` "value": "{{.tag}}"`
|
||||
` },`
|
||||
`{`
|
||||
` "comparisonInfo": {`
|
||||
` "caseSensitive": true,`
|
||||
` "negate": true,`
|
||||
` "operator": "CONTAINS",`
|
||||
` "type": "STRING",`
|
||||
` "value": "HealthResource"`
|
||||
` },`
|
||||
` "key": {`
|
||||
` "attribute": "SERVICE_NAME"`
|
||||
` }`
|
||||
`}`
|
||||
` },`
|
||||
` "key": {`
|
||||
` "attribute": "SERVICE_TAGS"`
|
||||
` }`
|
||||
` }`
|
||||
` ],`
|
||||
` "enabled": true,`
|
||||
` "propagationTypes": [`
|
||||
` "SERVICE_TO_PROCESS_GROUP_LIKE",`
|
||||
` "SERVICE_TO_HOST_LIKE"`
|
||||
` ],`
|
||||
` "type": "SERVICE"`
|
||||
`}`
|
||||
|
||||
Note: you can apply the same logic for PingResource, PrometheusResource or any other entity it's intended to be excluded
|
||||
|
||||
3. Commit and pull request to merge the branch to the master:
|
||||
|
||||
`git add <changes>`
|
||||
|
||||
`git commit -m "<app_name> configuration changes"`
|
||||
|
||||
`git push -u origin <branch>`
|
||||
|
|
@ -0,0 +1,76 @@
|
|||
{
|
||||
"dimensionalRules": [],
|
||||
"name": "{{.name}}",
|
||||
"rules": [
|
||||
{
|
||||
"conditions": [
|
||||
{
|
||||
"comparisonInfo": {
|
||||
"negate": false,
|
||||
"operator": "EQUALS",
|
||||
"type": "TAG",
|
||||
"value": {
|
||||
"context": "CONTEXTLESS",
|
||||
"key": "Component",
|
||||
"value": "{{.tag}}"
|
||||
}
|
||||
},
|
||||
"key": {
|
||||
"attribute": "SERVICE_TAGS"
|
||||
}
|
||||
}
|
||||
],
|
||||
"enabled": true,
|
||||
"propagationTypes": [
|
||||
"SERVICE_TO_PROCESS_GROUP_LIKE",
|
||||
"SERVICE_TO_HOST_LIKE"
|
||||
],
|
||||
"type": "SERVICE"
|
||||
},
|
||||
{
|
||||
"conditions": [
|
||||
{
|
||||
"comparisonInfo": {
|
||||
"negate": false,
|
||||
"operator": "EQUALS",
|
||||
"type": "TAG",
|
||||
"value": {
|
||||
"context": "CONTEXTLESS",
|
||||
"key": "Component",
|
||||
"value": "{{.tag}}"
|
||||
}
|
||||
},
|
||||
"key": {
|
||||
"attribute": "PROCESS_GROUP_TAGS"
|
||||
}
|
||||
}
|
||||
],
|
||||
"enabled": true,
|
||||
"propagationTypes": [
|
||||
"PROCESS_GROUP_TO_HOST"
|
||||
],
|
||||
"type": "PROCESS_GROUP"
|
||||
},
|
||||
{
|
||||
"conditions": [
|
||||
{
|
||||
"comparisonInfo": {
|
||||
"negate": false,
|
||||
"operator": "EQUALS",
|
||||
"type": "TAG",
|
||||
"value": {
|
||||
"context": "CONTEXTLESS",
|
||||
"key": "Component",
|
||||
"value": "{{.tag}}"
|
||||
}
|
||||
},
|
||||
"key": {
|
||||
"attribute": "HOST_TAGS"
|
||||
}
|
||||
}
|
||||
],
|
||||
"enabled": true,
|
||||
"type": "HOST"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
@ -0,0 +1,20 @@
|
|||
config:
|
||||
- CDnewComponentTag: default.json
|
||||
CDnewComponentTag.CN-PreProd:
|
||||
- name: CD_newComponentTag
|
||||
- tag: newComponentTag
|
||||
CDnewComponentTag.CN-Prod:
|
||||
- name: CD_newComponentTag
|
||||
- tag: newComponentTag
|
||||
CDnewComponentTag.EMEA-PreProd:
|
||||
- name: CD_newComponentTag
|
||||
- tag: newComponentTag
|
||||
CDnewComponentTag.EMEA-Prod:
|
||||
- name: CD_newComponentTag
|
||||
- tag: newComponentTag
|
||||
CDnewComponentTag.NA-PreProd:
|
||||
- name: CD_newComponentTag
|
||||
- tag: newComponentTag
|
||||
CDnewComponentTag.NA-Prod:
|
||||
- name: CD_newComponentTag
|
||||
- tag: newComponentTag
|
||||
|
|
@ -0,0 +1,63 @@
|
|||
|
||||
## Configure Notification System
|
||||
|
||||
### MS Teams - Default
|
||||
1. Open *notification.yaml* under your application configuration folder. You will see that all notification systems are via MS Teams by default with an
|
||||
https://empty webhook (not configured).
|
||||
2. Let's suppose you want to start receiving alerts from Dynatrace via MS Teams just for your *EMEA PROD*. Create an incoming webhook in MS Teams
|
||||
Follow [this](https://www.dynatrace.com/support/help/shortlink/set-up-msteams-integration#configuration-in-microsoft-teams) link
|
||||
3. Add the incoming webhook to this line:
|
||||
|
||||
`<app_name>-PROD.EMEA-Prod:`
|
||||
|
||||
`- name: CD_<app_name> PROD`
|
||||
|
||||
`- alertingProfile: CD_<app_name>/alerting-profile/CD<app_name>-PROD.id`
|
||||
|
||||
`- webhook: <here>`
|
||||
|
||||
`- skipDeployment: "false"`
|
||||
|
||||
4. Save and commit changes:
|
||||
|
||||
`git add <changes>`
|
||||
|
||||
`git commit -m "<app_name> configuration changes"`
|
||||
|
||||
`git push -u origin <branch>`
|
||||
|
||||
Note: If you want to enable MS Teams for any other hub/stage, follow the same steps but make sure you're under the right configuration:
|
||||
`<app_name>-<stage>.<env>-<stage>:`
|
||||
|
||||
### Email
|
||||
In the following example, the team intends to use email instead of the default one (MS Teams) for the EMEA PROD notification system. For that, the following changes have to be done:
|
||||
1. Keep the MS Teams integration disabled, with the https://empty webhook
|
||||
|
||||
`<app_name>-PROD.EMEA-Prod:`
|
||||
|
||||
`- name: CD_<app_name> PROD`
|
||||
|
||||
`- alertingProfile: CD_<app_name>/alerting-profile/CD<app_name>-PROD.id`
|
||||
|
||||
`- webhook: https://empty`
|
||||
|
||||
`- skipDeployment: "false"`
|
||||
|
||||
2. Create a new configuration template under config, using the email template:
|
||||
|
||||
`config:`
|
||||
|
||||
`- CD<app_name>email: email.json`
|
||||
|
||||
3. Describe the configuration below, using the following template:
|
||||
|
||||
`CD<app_name>email.EMEA-Prod:`
|
||||
|
||||
`- name: CD_<app_name> PROD`
|
||||
|
||||
`- alertingProfile: CD_<app_name>/alerting-profile/CD<app_name>-PROD.id`
|
||||
|
||||
`- receivers: distributionEmailexample@bmw.de`
|
||||
|
||||
### ITSM
|
||||
Coming soon!
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
{
|
||||
"active": true,
|
||||
"alertingProfile": "{{.alertingProfile}}",
|
||||
"bccReceivers": [],
|
||||
"body": "{ProblemDetailsHTML}",
|
||||
"ccReceivers": [],
|
||||
"name": "{{.name}}",
|
||||
"receivers": [
|
||||
"{{.receivers}}"
|
||||
],
|
||||
"subject": "{State} Problem {ProblemID}: {ImpactedEntity}",
|
||||
"type": "EMAIL"
|
||||
}
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
{
|
||||
"acceptAnyCertificate": false,
|
||||
"active": true,
|
||||
"alertingProfile": "{{.alertingProfile}}",
|
||||
"headers": [],
|
||||
"name": "{{.name}}",
|
||||
"notifyEventMergesEnabled": false,
|
||||
"payload": "{\n\"title\":\"{ProblemTitle}\",\n\"text\":\"{ProblemDetailsHTML}\",\n\"themeColor\":\"EA4300\"\n}",
|
||||
"type": "WEBHOOK",
|
||||
"url": "{{.webhook}}"
|
||||
}
|
||||
|
|
@ -0,0 +1,70 @@
|
|||
config:
|
||||
- CDnewComponentTag-PROD: msTeams.json
|
||||
- CDnewComponentTag-E2E: msTeams.json
|
||||
- CDnewComponentTag-INT: msTeams.json
|
||||
|
||||
#Prod notification system for EMEA/NA/CN
|
||||
CDnewComponentTag-PROD:
|
||||
- name: CD_newComponentTag PROD
|
||||
- alertingProfile: CD_managementZone/alerting-profile/CDnewComponentTag-PROD.id
|
||||
- webhook: https://empty
|
||||
- skipDeployment: "true"
|
||||
CDnewComponentTag-PROD.EMEA-Prod:
|
||||
- name: CD_newComponentTag PROD
|
||||
- alertingProfile: CD_managementZone/alerting-profile/CDnewComponentTag-PROD.id
|
||||
- webhook: https://empty
|
||||
- skipDeployment: "false"
|
||||
CDnewComponentTag-PROD.NA-Prod:
|
||||
- name: CD_newComponentTag PROD
|
||||
- alertingProfile: CD_managementZone/alerting-profile/CDnewComponentTag-PROD.id
|
||||
- webhook: https://empty
|
||||
- skipDeployment: "false"
|
||||
CDnewComponentTag-PROD.CN-Prod:
|
||||
- name: CD_newComponentTag PROD
|
||||
- alertingProfile: CD_managementZone/alerting-profile/CDnewComponentTag-PROD.id
|
||||
- webhook: https://empty
|
||||
- skipDeployment: "false"
|
||||
|
||||
#E2E notification system for EMEA/NA/CN
|
||||
CDnewComponentTag-E2E:
|
||||
- name: CD_newComponentTag E2E
|
||||
- alertingProfile: CD_managementZone/alerting-profile/CDnewComponentTag-E2E.id
|
||||
- webhook: https://empty
|
||||
- skipDeployment: "true"
|
||||
CDnewComponentTag-E2E.EMEA-Prod:
|
||||
- name: CD_newComponentTag E2E
|
||||
- alertingProfile: CD_managementZone/alerting-profile/CDnewComponentTag-E2E.id
|
||||
- webhook: https://empty
|
||||
- skipDeployment: "false"
|
||||
CDnewComponentTag-E2E.NA-Prod:
|
||||
- name: CD_newComponentTag E2E
|
||||
- alertingProfile: CD_managementZone/alerting-profile/CDnewComponentTag-E2E.id
|
||||
- webhook: https://empty
|
||||
- skipDeployment: "false"
|
||||
CDnewComponentTag-E2E.CN-Prod:
|
||||
- name: CD_newComponentTag E2E
|
||||
- alertingProfile: CD_managementZone/alerting-profile/CDnewComponentTag-E2E.id
|
||||
- webhook: https://empty
|
||||
- skipDeployment: "false"
|
||||
|
||||
#INT notification system for EMEA/NA/CN
|
||||
CDnewComponentTag-INT:
|
||||
- name: CD_newComponentTag INT
|
||||
- alertingProfile: CD_managementZone/alerting-profile/CDnewComponentTag-INT.id
|
||||
- webhook: https://empty
|
||||
- skipDeployment: "true"
|
||||
CDnewComponentTag-INT.EMEA-PreProd:
|
||||
- name: CD_newComponentTag INT
|
||||
- alertingProfile: CD_managementZone/alerting-profile/CDnewComponentTag-INT.id
|
||||
- webhook: https://empty
|
||||
- skipDeployment: "false"
|
||||
CDnewComponentTag-INT.NA-PreProd:
|
||||
- name: CD_newComponentTag INT
|
||||
- alertingProfile: CD_managementZone/alerting-profile/CDnewComponentTag-INT.id
|
||||
- webhook: https://empty
|
||||
- skipDeployment: "false"
|
||||
CDnewComponentTag-INT.CN-PreProd:
|
||||
- name: CD_newComponentTag INT
|
||||
- alertingProfile: CD_managementZone/alerting-profile/CDnewComponentTag-INT.id
|
||||
- webhook: https://empty
|
||||
- skipDeployment: "false"
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
# Synthetic Configuration
|
||||
|
||||
If you're required to calculate the KPI for Availability, a synthetic must be configured.
|
||||
|
||||
1. Modify the synthetic-monitor.yaml file, providing the endpoint that will be tested, and location where the synthetic will run
|
||||
2. Change the skipDeployment to false
|
||||
3. Commit and pull request to merge the branch to the master:
|
||||
|
||||
`git add <changes>`
|
||||
|
||||
`git commit -m "<app_name> configuration changes"`
|
||||
|
||||
`git push -u origin <branch>`
|
||||
|
|
@ -0,0 +1,85 @@
|
|||
{
|
||||
"anomalyDetection": {
|
||||
"loadingTimeThresholds": {
|
||||
"enabled": false,
|
||||
"thresholds": [
|
||||
{
|
||||
"type": "TOTAL",
|
||||
"valueMs": 0
|
||||
}
|
||||
]
|
||||
},
|
||||
"outageHandling": {
|
||||
"globalOutage": true,
|
||||
"localOutage": false,
|
||||
"localOutagePolicy": {
|
||||
"affectedLocations": 1,
|
||||
"consecutiveRuns": 3
|
||||
}
|
||||
}
|
||||
},
|
||||
"automaticallyAssignedApps": [],
|
||||
"createdFrom": "GUI",
|
||||
"enabled": true,
|
||||
"entityId": "HTTP_CHECK-3A93AE1CD9A029F7",
|
||||
"frequencyMin": 1,
|
||||
"locations": [
|
||||
"SYNTHETIC_LOCATION-6A36EDD481FAEB5D"
|
||||
],
|
||||
"managementZones": [
|
||||
{
|
||||
"id": "-2133422980246552080",
|
||||
"name": "CD_SMS-Gateway"
|
||||
}
|
||||
],
|
||||
"manuallyAssignedApps": [],
|
||||
"name": "{{.name}}",
|
||||
"requests": [
|
||||
{
|
||||
"entityId": "HTTP_CHECK_STEP-0BA53EC80CD7EE5A",
|
||||
"name": "SMS GW EMEA PROD",
|
||||
"sequenceNumber": 1
|
||||
}
|
||||
],
|
||||
"script": {
|
||||
"requests": [
|
||||
{
|
||||
"configuration": {
|
||||
"acceptAnyCertificate": true,
|
||||
"followRedirects": true,
|
||||
"requestHeaders": [
|
||||
{
|
||||
"name": "accept",
|
||||
"value": "application/json"
|
||||
},
|
||||
{
|
||||
"name": "Content-Type",
|
||||
"value": "application/json"
|
||||
},
|
||||
{
|
||||
"name": "api_key",
|
||||
"value": "355DE89C-7B72-4EA3-BDD8-157C79EB2C23"
|
||||
}
|
||||
]
|
||||
},
|
||||
"description": "SMS GW EMEA PROD",
|
||||
"method": "POST",
|
||||
"requestBody": "{\n \"sender\": \"CDE2EMonitoring\",\n \"msg\": \n [ \n {\"to\": \n [ \n {\n \"number\": 49151601XXXX\n \n }\n ],\n \"contentType\":\"text\",\n \"content\": \"Test SMS GW MONITORING\" \n \n }\n ]\n \n}",
|
||||
"url": "https://smsgw-emea-prod.bmwgroup.net/sms/v1/message",
|
||||
"validation": {
|
||||
"rules": [
|
||||
{
|
||||
"passIfFound": true,
|
||||
"type": "httpStatusesList",
|
||||
"value": "400"
|
||||
}
|
||||
],
|
||||
"rulesChaining": "or"
|
||||
}
|
||||
}
|
||||
],
|
||||
"version": "1.0"
|
||||
},
|
||||
"tags": [],
|
||||
"type": "HTTP"
|
||||
}
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
config:
|
||||
- newComponentTag: default.json
|
||||
|
||||
newComponentTag:
|
||||
- name: newComponentTag - <endpoint>
|
||||
- mzName: CD_managementZone/management-zone/CDnewComponentTag.name
|
||||
- mzId: CD_managementZone/management-zone/CDnewComponentTag.id
|
||||
- endpoint: <endpoint>
|
||||
- location: <location>
|
||||
- skipDeployment: "true"
|
||||
Loading…
Reference in New Issue