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

Synthetic Port and Ping test - add multiple tests

ct_27
Helper

I'm looking for some guidance on the easiest way to add a few hundred Port and Ping tests.  We have tested the extension for a while now against 50 or so items. We're interested in expanding usage across our Infrastructure Monitoring to hundreds of devices.   

 

Is there a way to update a configuration file or some other means other than the UI?  The UI will take us way too long to add so many devices.

 

We run the extension on multiple ActiveGates to spread the load so the same solution to setup via a configuration file would also allow us to put some on AG1, some on AG2, etc.

 

Thanks in advance for the help to whoever has some ideas.

2 REPLIES 2

ChadTurner
Guru

I would imagine you could use either the API or something like postman to mass import the jobs and custom extension to a range of AG's. I would reach out to support on how to do this though as it is probably unique to the extension. 

-Chad

You're right....I had not seen the Extensions EarlyAdopter API until you mentioned something.

 

For those looking to do the same here are the steps taken:

 

 

1) Build an instance of the extension first using the UI
     note: take note of the unique name you give it

2) Obtain the id of the instance you just created
     a) Use API : Get /extensions/{id}/instances
     b) Provide the id of your extension (e.g.    custom.remote.python.thirdparty_ping)
          Note: You can find this by navigating in a browser to the extension in question. Click on it and within the URL you will find 'id='. Copy the text between the '=' and the ';'
    c) Run the API and you should get a Code 200.  
    d) Scroll down the response list until you find the "name" of the instance you created in Step 1
     e) copy the "id"

3) Obtain a copy of the instance configuration
    a) Use API: Get /extensions/{id}/instances/{configurationId}
    b) Provide the same ID of the extension used above (e.g.    custom.remote.python.thirdparty_ping) and the ID of the instance you found in Step 2e
    c) Run the API and you should get a Code 200
    d) Copy the Response body

4) Let's test creating a new instance with the API
     a) Use API: POST /extensions/{id}/instances/validator
     b) Provide the same ID of the extension used above (e.g. custom.remote.python.thirdparty_ping)
     c) Paste in the Response body copied in step 3d to the "Request body" for this API
     d) In the pasted JSON; Fill in your api_token and put double quotes around it
     e)  In the pasted JSON; Delete the line that starts with "endpointId" (this is the id of the existing one and you're trying to create a new one right now)
     f) Run the API, debug, fix, repeat until you get a Code 204
     g) Be sure to change attributes that uniquely identify the new instance you are trying to create.
     h) Copy the final JSON that works
  
5) Final Step - Create a new instance
       a) Use API: POST /extensions/{id}/instances
       b) Provide the same ID of the extension used above (e.g. custom.remote.python.thirdparty_ping)
       c) Paste in the JSON from Step 4h
       d) Run the API and you should get Code 201 with a new "id" in the Response body

 

 

 

That's it, you should be able to refresh the UI and see your new Extension Instance.