Learn how to use Dynatrace to automatically keep status of your Golive environments up to date


Integrate Golive with Dynatrace Synthetic Monitoring

Dynatrace Synthetic Monitoring allows to easily check availability of your applications.
Learn more: https://www.dynatrace.com/support/help/how-to-use-dynatrace/synthetic-monitoring

In this section, you will learn how to configure Dynatrace in order to automatically update the status of Golive environments when a problem is opened or resolved by Dynatrace

Ensure to have installed version 9.8.0 (or higher) of Golive

If you do not have an existing Dynatrace account, you can easily create a free account to perform this tutorial: https://www.dynatrace.com/trial

 


Connect Dynatrace with Golive

Dynatrace will be the master system in charge to notify Golive when an environment is up or down. In order to do that, we must setup an integration between Dynatrace and the Golive Rest API.

STEP 1 Create a new “Problem notification”

Click on “Settings” left menu item section, open the “Integration” section and click on “Problem notifications”:

Click on “Add notification” button:

STEP 2 Configure name and endpoint

Choose a name and set the endpoint with this value:

https://{{jira.your-company.com}}/rest/apwide/tem/1.1/status-changes
CODE

N.B. replace “{{jira.your-company.com}}” by the base url of the Jira instance where Golive is installed

Your configuration should looks like that:

STEP 3 Prepare and set the authorization token

  • name the new variable “GOLIVE_BEARER_TOKEN”

  • In section “Additional HTTP headers”, click on “Create basic authorization header” button:

  • enter the user/password you want to use to connect to your Jira and Golive API

  • your token configuration should look like that:

Golive REST api use the same authentification engine as Jira: https://developer.atlassian.com/server/jira/platform/basic-authentication/.
Here is another good tutorial explaining how it works and how you can easily generate basic authentication tokens: https://www.baeldung.com/java-postman-authentication

STEP 4 Configure the custom payload

Copy/Paste this payload into “Custom payload”:

{
  "scope": {
    "criteria": [
      {
        "name": "environmentId",
        "values": [
          {Tags[goliveEnvId]}
        ]
      }
    ]
  },
  "status": {
      "name": "{State}"
  },
  "statusMapping": {
      "OPEN": { "name": "Down" },
      "RESOLVED": { "name": "Up" }
  },
  "ignoredStatuses": [
      {"name": "Deploy"},
      {"name": "Maintenance"} 
  ]
}
JSON

Ensure that these 2 environment statuses exist in Golive:

  • “Up”

  • “Down”

Or replace “Up” and “Down” in the code snippet by your custom statuses.

Your configuration should look like that:

STEP 5 Assign your integration to an Alerting Profile

Choose to which alerting profile should be used to notify Golive:

STEP 6 Save your changes

Do not forget to save your changes:


Enable monitoring of an Environment

STEP 1 Create a new Golive Environment and get its ID

Connect to Golive and create a new Golive environment that you will use to test this integration.

Learn how to create a new environment here: Manage Environments

Memorize the id of the environment that you want to use to test this integration.

In current example, the id of this environment is 28.

STEP 2 Create a new Synthetic Test

Connect to Dynatrace, click on “Applications & Microservices” left menu and click on “Synthetic” :

STEP 3 Create a new Synthetic Test

Click on “Create a synthetic monitor” button:

Click on “Create an HTTP monitor” button:

Choose a name and add a tag called “golive_env_id” containing the id of the Golive environment that is monitored
Ex: golive_env_id: 28 (where 28 should be replaced by your own Golive environment id):

STEP 4 Set HTTP request to check availability of the environment

Click on “Add HTTP request” button:

Set the endpoint that should be tested:

Click on “Add HTTP request” button:

Click on “Next” button:

STEP 5 Select the locations

Select locations you want to use to call your environment url:

If you want to test an environment that is not directly reachable from Internet, you should configure a “Private Synthetic location”: https://www.dynatrace.com/support/help/how-to-use-dynatrace/synthetic-monitoring/private-synthetic-locations/create-a-private-synthetic-location

Click on “Next” button:

Click on “Create HTTP monitor” button:

You have configured your first monitoring of a Golive environment!

You can repeat these steps to create a synthetic test for each of your Golive Environments.


Test your Synthetic Monitoring

Select the Synthetic monitoring you want to test and click on “Edit”:

Replace the right URL by a fake one:

Save your changes:

Wait for 1-5 minutes, the monitoring should now fail and a problem should be raised:

Connect to Golive and check that the status of your environment is now “Down” in Golive.

Put back the right URL:

Save your changes:

After 1-5 minutes:

  • the problem in Dynatrace should be resolved

  • the status of your environments is “Up” again in Golive

Well done, time for a coffee break!