Appdynamics / api-commandline-tool

AppDynamics Command Line Tool
Apache License 2.0
45 stars 40 forks source link

Feature request: import/export Information Points. #33

Closed lpokrzyw closed 3 years ago

lpokrzyw commented 3 years ago

Hi team,

I'd like to ask for a feature in which we could export and import Information Points Configuration, using the API of ConfigExporter.

Please let me know if there is more information required.

Thanks, Łukasz

svrnm commented 3 years ago

I'd like to ask for a feature in which we could export and import Information Points Configuration, using the API of ConfigExporter.

This tool here is only for interacting with the controller, not ConfigExporter or any other endpoint. It's possible to add features for Information Points export/import through controller APIs.

lpokrzyw commented 3 years ago

Hi @svrnm ,

thank you for responding me! Please see required endpoints: GET /controller/restui/informationPointUiService/getAllInfoPointGathererConfigsForApplication/{applicationId} POST /controller/restui/informationPointUiService/createInfoPointGathererConfig

Thanks, Łukasz

svrnm commented 3 years ago

@LukpoDevs please checkout the latest commit: https://github.com/Appdynamics/api-commandline-tool/commit/4c2d9a48c1272ccab4fc3b39e3a7d11027e146dc, it contains all you need for information points:

informationPoint:
  title: Information Points
  descripion: Retrieve, create and modify information points.
  list:
    title: List information points.
    description: Provide an application id (-a) and a time range string (-t) as parameters.
    example: -a 6743 -t last_1_hour.BEFORE_NOW.-1.-1.60
    method: GET
    endpoint: /controller/restui/informationPointUiService/getAllInfoPointsListViewData/{{a:application}}?time-range={{t:timerange}}
  create:
    title: Create an information point.
    description: Provide an json file (with @ as prefix) containing the information point config (-d) as parameter.
    example: -d @examples/information_point.json
    method: POST
    endpoint: /controller/restui/informationPointUiService/createInfoPointGathererConfig
    payload: {{d:infopoint_config}}
  update:
    title: Update an information point.
    description: Provide an json file (with @ as prefix) containing the information point update config (-d) as parameter.
    example: -d @examples/information_point_update.json
    method: POST
    endpoint: /controller/restui/informationPointUiService/updateInfoPointGathererConfig
    payload: {{d:infopoint_config}}
  delete:
    title: Delete information points.
    description: Provide an id or an list of ids of information points (-i) as parameter.
    example: -i 1326,1327
    method: POST
    endpoint: /controller/restui/informationPointUiService/deleteInformationPoints
    payload: [{{i:information_points}}]
lpokrzyw commented 3 years ago

Hi @svrnm,

thank you for implementing this! 👍