Figure: Optimizing Microsoft Azure Virtual Machine Processes
Figure: Optimizing Microsoft Azure Virtual Machine Processes

- Data Collection—Collect Azure data into Densify. Use the Densify API or the Densify Console to initiate this process.
- Analysis—Analyze collected data based on pre-defined policies to make recommendations. The analysis process is initiated automatically after data collection completes. Results can be immediately pulled from the Densify API or pushed to a webhook URI once the analysis is complete.
- Reporting Database Update—Update reporting database tables with analysis results for reporting. The reporting database update process is scheduled to run nightly after the analysis refresh process. The Densify Console Azure optimization opportunity report and the Impact Analysis and Recommendation reports are available after the reporting database update is complete.
Before you can collect Microsoft Azure cloud infrastructure data in Densify, you need to create and configure an Azure account with access to your Azure subscriptions. See Microsoft Azure Data Collection Prerequisites or Microsoft Azure Data Collection Prerequisites for for a Service Principal for details.
- From the Densify API: Authenticate using JWT—Retrieve token to authenticate each subsequent API call.
- Collect Azure data through the Densify API or the Densify Console. See Configuring a Microsoft Azure Connection for details.
- API: List All Azure Analyses—Query for the analysis entity of each subscription for which data was collected (from step 1). You can use the returned analysis entity to check for status and recommendations.
- API: Poll for Analysis Status—Check for data collection and analysis status. The recommendations are available when analysis is complete.
- API: Download Results to Apply Recommendations—Retrieve recommendations to implement, manually or forward to your orchestration engine.
- API/Console (optional): Download Impact Analysis and Recommendation Instance Report for system owners. This can achieved from the Densify API or from the Densify Console. See [Viewing the Impact Analysis and Recommendation Report](https://www.densify.com/docs/WebHelp_Densify_Cloud/Content/Densify_Com/Viewing the Impact Analysis and Recommendation Report) for details of the report from the Densify Console.
- Console (optional alternative): Review Azure Virtual Machine optimization opportunity report from the Densify Console. See [Azure](https://www.densify.com/docs/WebHelp_Densify_Cloud/Content/Densify_Com/Optimizing Your Public Cloud#Azure) for details. The optimization opportunity report is available after the nightly reporting database update.
- Console (optional): Review Azure optimization policy settings used during analysis from the Densify Console. Contact Support@Densify.com for details.
Postman Collection
Densify provides a Postman collection of sample API requests for working with your public cloud environments. See the Postman Collection.Authenticate using JWT
Use the/authorize
resource to retrieve an authenticated token to make subsequent API calls. See Authorize for details. By default, the token expires in 5 minutes, therefore you will need to ensure that you have an active token for each Densify API request.
Example: Retrieving an Authenticated Token
Example: Retrieving an Authenticated Token
Request:Response:Use the
POST /authorize
apiToken
value in your Authorization request header for subsequent Densify API calls.Initiate Azure Data Collection and Analysis
The following example shows you how to initiate Azure data collection and analysis, and send the results to a WebHook. See Analysis Azure Analyze for details.Example: Running Azure Data Collection and Analysis
Example: Running Azure Data Collection and Analysis
Request:Response:
POST /analysis/azure/analyze
List All Azure Analyses
To see a list of all Azure analyses currently in Densify, use the/analysis/azure
resource. See List all analyses for a particular platform and vendor for details of the resource operation.
Example: List all Saved Azure Analyses
Example: List all Saved Azure Analyses
Request:Response:
Poll for Analysis Status
Use the"analysisStatus"
resource element from the List All Azure Analyses response to poll for status of the data collection and analysis. See Check for analysis status for details of the resource operation. The analysis is complete and recommendations are available when "analysisStage": "Completed"
.
Example: Checking Azure Analysis Status
Example: Checking Azure Analysis Status
Request:Response:
Add a Webhook to an Existing Azure Analysis
You can add a webhook definition to an existing Azure analysis. The analysis will push the optimized results to the specified webhook URI. See Add webhook to an analysis for details on adding a webhook.Example: Adding a Webhook Definition to an Existing Azure Analysis
Example: Adding a Webhook Definition to an Existing Azure Analysis
Request:Response:
POST /webhook/analysis/cloud/azure/398d26f3-b705-4fa6-8d31-16724ae320a2
Download Results to Apply Recommendations
Use the/analysis/cloud/azure/<analysisId>/results
resource to retrieve recommendation results and forward to orchestration engine. See Analysis: Azure Recommendations for details.
Example: Returning Recommendations in Terraform-map
Example: Returning Recommendations in Terraform-map
Request:Headers:
Download Impact Analysis and Recommendation Instance Report
Use therptHref
resource element provided in the instance recommendation output to download a PDF Impact Analysis and Recommendation Report for each instance. This report is available after a reporting database update, which is scheduled to run nightly. See rptHref and Example: Downloading an Impact Analysis and Recommendation Report for details.
Example: Downloading an Impact Analysis and Recommendation Report
Example: Downloading an Impact Analysis and Recommendation Report
Request:Headers: