cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Not a customer? Start a free trial

Click the Start a free trial link to start a 15-day SaaS trial of our product and join our community as a trial user. If you are an existing customer do not start a free trial.

AppDynamics customers and established members should click the sign in button to authenticate.

Dashboards

How to export the list of all Custom Dashboards in the controller into a format like JSON or XML?

SOLVED
Amartya.Jha
New Member

How to export the list of all Custom Dashboards in the controller into a format like JSON or XML?

 

Is there a way you can export Dashboards in any format like JSON or XML?

 

^ Edited by @Ryan.Paredez to include the location of the original comment.

 

Note: This comment was split off into its own post from this original post: How to export the list of all Custom Dashboards in the controller into a file?

Tags (3)
By replying you agree to the Terms and Conditions of the AppDynamics Community.
How to export the list of all Custom Dashboards in the controller into a format like JSON or XML?
6 REPLIES 6
Nawaz Ali.Mohammad
AppDynamics Team

Hello Amartya,

 

If you export the custom dashboards from "Dashboards & Reports", I see that the dashboard by default is being exported as .json file. I have attached a gif recording of the same.

Export.gif

Vishwanath.Nair
Builder

Is there a way to export all the dashboards at once via command line ?

 

We would like to set up an automated way of exporting all custom dashboards at regular intervals.

 

Tags (1)
Mario.Morelli
Architect

Hi There

 

You can create a simple script to query all the dashboard ID's

https://<controller URL>/controller/restui/dashboards/getPermissionsForDashboards

 

Then just loop through the dashboard id's, example below GET Query

https://<controller URL>/controller/CustomDashboardImportExportServlet?dashboardId=1234

 

We used a Python script to do this task, for regular backups of teh dashboards into JSON backups format

 

Ciao



Learn more about me in the Community Member Spotlight Q & A
Vishwanath.Nair
Builder

Thanks for the tip @Mario.Morelli .

 

I tried a simple curl test to the url https://<controller URL>/controller/restui/dashboards/getPermissionsForDashboards and I got an error.

 

curl --user xxxxxx@xxxxx:xxxx https://appdynamics_controller:8181/controller/restui/dashboards/getPermissionsForDashboards

 

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Unauthorized</title>
</head>
<body>
HTTP Error 401 Unauthorized
<p/>
This request requires HTTP authentication
</body>
</html>

 

Is this expected ? HTTP is blocked in our environment, so cant test that. Also, we are going through a LB.

Mario.Morelli
Architect

Hi Vishwanath

 

My Apologies, I gave you the incorrect details, please find below method to query it:)

 

1) Get the JESSIONID and X-CSRF-TOKEN with user having permissions

curl -i --user <USERNAME>@<Account>:<PASSWORD> https://<Controller-URL>/controller/auth?action=login

 

2) Run the following CURL call with JESSIONID and X-CSRF-TOKEN from step 1?

curl -i -H "X-CSRF-TOKEN:<TOKEN FROM ABOVE>" -H "Cookie: JSESSIONID=<JSESSION ID FROM ABOVE>; X-CSRF-TOKEN=<TOKEN>;" -H "Content-Type: application/json" -H "Accept: application/json" https://<Controller URL>/controller/restui/dashboards/getAllDashboardsByType/false


Example below
curl -i -H "Cookie:JSESSIONID=9b81672143e228e4eb73fdea89a9;" -H "X-CSRF-TOKEN:6fece457az197155a8f68320cfa781eaeb88991b" -H "Content-Type: application/json" -H "Accept: application/json" https://<controller url>/controller/restui/dashboards/getAllDashboardsByType/false"

 

 

This will output all dashboards, with one of the attributes being the Dashboard ID, which you can then use in the last query

https://<controller url>/controller/CustomDashboardImportExportServlet?dashboardId=<dashboard ID>

 

Ciao

 

 



Learn more about me in the Community Member Spotlight Q & A
Vishwanath.Nair
Builder

Thanks a lot! Much appreciated.