Using AppDynamics Provider for verification

OpsMx ISD uses AppDynamics data to verify and automate software deployments. AppDynamics should be configured in the verification stage in your CD pipeline to enable this analysis.

Add Verification Gate

To use the AppDynamics provider for verification, insert the verification gate in your pipeline.

  • From the ISD application dashboard, Click "Setup" --> Click "Applications" and then Click your "Application Name" as shown in the image below. This will take you to the pipelines page.

  • Click the "pipeline" and click "Add New Gate". Next, you get the option to select the type of gate you want to add. Select the gate type as "Verification" from the drop-down menu as shown below:

  • Fill in the following information on the above screen.

    1. Type: This drop-down list is filled with different custom gates available in the ISD platform. Select Verification type in this list.

    2. Gate Name: Enter a suitable name for the gate.

    3. Environment: The drop-down list contains all the deployment environments available to the user. Select the environment where you want to deploy Gate.

    4. Depends On: This drop-down list contains all the available stages in the pipeline. Select the predecessor stage where the gate needs to be positioned

    5. Verification Configuration: Click the "+" symbol adjacent to Metric Template. The dialog box appears to configure the metric template and Click "CUSTOM" as shown in the below image. Currently, AppDynamics Provider is supported only for custom metrics.

  • Fill in the following information on the above screen.

    6. Metric Template: Name Enter a suitable name for the metric template

    7. Datasource: The drop-down list contains all the providers supported by OpsMx ISD. Select AppDynamics from the list.

    8. Accounts: The drop-down list contains all the available accounts for the AppDynamics provider. Select the provider account created earlier from the drop-down.

    9. Metric Scope Placeholder: Enter the metric scope placeholder Key in the text box. For example, you can use ${Scope} as the placeholder. This text in the metric query will be replaced by Baseline & New Release values to extract metrics data from AppDynamics.

    For example, in the metric query /controller/rest/applications/issuegen-demo/metric-data?metric-path=Application%20Infrastructure%20Performance%7Cissuegen-demo%7CIndividual%20Nodes%7C${scope}%7CJVM%7CMemory%7CHeap%7CUsed%20%25 scope placeholder “${scope}” will be replaced by Baseline & New Release values to get respective metrics data from AppDynamics API.

    10. Baseline: Enter the Baseline value in the text box. This is a unique value which represents the baseline metrics used for analysis. Refer to step 4.

    11. New Release: Enter the New Release value in the text box. This unique value represents the new release metrics used for analysis. Refer to step 4.

Proceed to fill the below Metric Query Selection table.

  • Fill in the following information on the above Query Selection table.

    12. Query Name: Enter a suitable name for the metric query in the text box.

    13. Query String:

    • In AppDynamics, click on Home and click on Applications. Click the Application whose metrics you want to use for Verification.

    • Click Metric Browser in the left pane and click metric group based on which metric you want to use.

    • For example, for Errors per Minute, click Overall Metric Performance and click Application of interest and then click Individual Nodes.

    • Click on the node from which you want to verify the metrics. Right-click the metric you want to use. Select Copy REST URL. Remove the base url part from the REST URL. Replace the node name with ${Scope}. Remove the time range at the end of the REST URL, since this is decided at run time. Your query is ready. For example, the query for Errors per Minute may appear like this: /controller/rest/applications/issuegen-demo/metric-data?metric-path=Overall%20Application%20Performance%7Cissuegen-demo%7CIndividual%20Nodes%7C${scope}%7CErrors%20per%20Minute

    • Paste this in the Query field.

      Repeat the procedure for other metrics you want to use for the analysis.

14. Risk Direction: The drop-down list has 3 entries - Higher, Lower, Higher, or Lower. Select the one appropriate for the metric. 15. Threshold(%): It is the percentage change beyond which the metrics analysis is scored as 0. Enter two threshold values, High & Low in respective text boxes. 16. Criticality: The drop-down list has 3 entries - Normal, Must have & Critical. The default value is Normal. If you want the metric analysis to fail if there is no metric data, select Must have. If you want the entire analysis to fail if the metric fails, select Critical.

17: Watchlist: Select watchlist toggle if you want the metric to appear on top of the list on the Metrics Report page. 18. NaN Strategy: The drop-down list has 2 entries - Remove and Replace with zero. This setting specifies how to treat missing metric values. If you want the missing values to be removed from the analysis, retain Remove which is the default value. If you want the missing values to be replaced with zeros, select Replace with zero. 19: Weight: By default, all metrics will have a weight of 1. Metrics weight can be reduced or increased by changing this number. This will determine how the individual metric score will impact the overall metric analysis score.

If you want to add more metric queries, click + which appears at the top right corner of the Query selection table. This adds a new row for entering metric parameters. For each metric, repeat steps 13 to 20.

20. Save: Click Save to finish configuring the metric template. 21. Payload Constraints: Payload constraints are for securing verification gate endpoints. It is optional. It consists of one or more key & value pairs. If it is added, ISD will check for the existence of these keys & values while triggering the verification gate from an external source. Refer Image 3. 22. Verification Save: Click Save to finish configuring the verification gate. Refer Image 3.

Last updated