cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Has anyone successfully integrated Dynatrace to the status API for Twilio?

larry_roberts
DynaMight Champion
DynaMight Champion

Hi All,

Has anyone successfully integrated Dynatrace to the status API for Twilio?

Details and dashboard here: https://status.twilio.com/api

JSON call (no authorization needed) here: https://gpkpyklzq55q.statuspage.io/api/v2/summary.json

With so many SaaS vendors (including Dynatrace) now offering status pages, I would really like to start taking advantage of these in Dynatrace. I played around with Synthetics on it, but found that the options are too limited for what we would want.

I was thinking of going the custom plugin route, but I am not sure how feasible that would be due to the fact that really all metrics within Dynatrace are really based on performance and in this case we would be looking for for of an event.

Looking at an example of the JSON returned, I would like to capture the components "name" and the "status" of each component. Then raise a problem if the status is anything but "operational" and then of course provide some detail in the problem that is raised such as the name, the status, along with a link back to the Twilio status page.

{
    "page": {
        "id": "gpkpyklzq55q",
        "name": "Twilio",
        "url": "https://status.twilio.com",
        "time_zone": "America/Los_Angeles",
        "updated_at": "2020-11-02T05:16:15.468-08:00"
    },
    "components": [
        {
            "id": "ys1jhy2ys04z",
            "name": "Group Rooms",
            "status": "operational",
            "created_at": "2019-01-10T08:35:00.743-08:00",
            "updated_at": "2020-09-24T22:11:38.577-07:00",
            "position": 1,
            "description": null,
            "showcase": false,
            "start_date": null,
            "group_id": "31pkbykrvbwr",
            "page_id": "gpkpyklzq55q",
            "group": false,
            "only_show_if_degraded": false
        },
        {
            "id": "g2dt752kwqs0",
            "name": "PSTN",
            "status": "operational",
            "created_at": "2016-04-08T13:28:39.348-07:00",
            "updated_at": "2020-10-09T08:10:00.822-07:00",
            "position": 1,
            "description": null,
            "showcase": false,
            "start_date": null,
            "group_id": "j3s4w3gnsj08",
            "page_id": "gpkpyklzq55q",
            "group": false,
            "only_show_if_degraded": false
        },
        {
            "id": "b9z92qjr2p04",
            "name": "TaskRouter",
            "status": "operational",
            "created_at": "2015-03-23T08:51:24.916-07:00",
            "updated_at": "2020-10-29T12:46:36.773-07:00",
            "position": 1,
            "description": "Twilio TaskRouter service",
            "showcase": false,
            "start_date": null,
            "group_id": "p750yl3t5mwk",
            "page_id": "gpkpyklzq55q",
            "group": false,
            "only_show_if_degraded": false
        },


Curious if anyone has tried to approach this with Dynatrace?

Thanks!

9 REPLIES 9

ChadTurner
DynaMight Legend
DynaMight Legend

@Larry R. were you able to get any additional insights on this? Anything you can share with the community on it?

-Chad

Hi Chad!

I am actually well on my way to building an ActiveGate plugin for this. You will be able select via the UI config exactly which of all the "Twilio Services" and / or "External Connectivity" services you want to monitoring the status for in Dynatrace using the Twilio status API.

Due to the limitations of Dynatrace, I am having to go through route of custom devices once again to accomplish this. That in return allows for the tagging, etc.

I am just putting the finishing touches on it. I would be happy to share via GitHub as soon as I am finished. We really need something else in Dynatrace that can be created as a custom entity that is not necessarily a custom device. There are custom services (which this is what I would consider Twilio to be), but in order to define those currently in Dynatrace, it requires a process group. In the case where you want to monitor something like Twilio through their status API, there would be no process group.

Hi Larry - can you please send me the link - or post it here.

 

Thanks in advance.

 

Manish

YAY!! Would love to see anything you have. This would be a great help!!

I have been swamped with other work, but plan to focus on this once again towards the end of this week. Should have it done soon.

Hi Larry.  Wondering if you were able to complete the above and can share the plugin details?  

Good afternoon, is there any news regarding this extension?

adam_gardner
Dynatrace Champion
Dynatrace Champion

adam_gardner_0-1638155018904.png

 

adam_gardner_0-1638152629305.png

 

Dynatrace now has the ability to model any custom entity. So you can model a "status page" then create instances of each page. From there, you can attach metrics (and events) to each "status page"

 

Once created, get to your entities via:

 

 

https://abc12345.live.dynatrace.com/ui/entity/list/entity:TYPE

 

 

 

then I used the Events v2 API to create a problem opening event:

 

 

 

curl -X POST "https://abc12345.live.dynatrace.com/api/v2/events/ingest"
-H "accept: */*"
-H "Authorization: Api-Token ***"
-H "Content-Type: application/json; charset=utf-8"
-d "{\"eventType\":\"ERROR_EVENT\",\"title\":\"An error has occurred\",\"timeout\":1,\"entitySelector\":\"type(entity:status_page),entityName.equals(twilio-gpkpyklzq55q)\",\"properties\":{\"foo\":\"bar\",\"foo22\":\"bar2\",\"foo3\":\"bar3\"}}"

 

 

How your experience has grown on this and what were you able to achieve?

Regards

Featured Posts