Azure DevOps reporting is a powerful tool that helps teams track and analyze their software development and delivery processes. It provides a centralized location for reporting and analytics.
With Azure DevOps reporting, teams can create custom reports using pre-built templates or by writing their own SQL queries. This allows for a high degree of flexibility and customization.
Azure DevOps offers a range of built-in reports that cater to different needs and use cases. These reports include burn-down charts, velocity charts, and test plan reports.
Reporting in Azure DevOps is based on a data warehouse that stores data from various sources, including work items, builds, and tests. This data warehouse is updated in real-time, ensuring that reports reflect the latest information.
Azure DevOps Reporting Basics
Azure DevOps provides a range of reporting and analytics features to help you track and analyze various aspects of your software development and delivery processes.
You can create custom dashboards in Azure DevOps to display relevant widgets and charts, and pin widgets to dashboards to provide at-a-glance information on work item progress, build and release status, code quality, and more.
Azure DevOps offers a set of built-in reports that cover various aspects of project management, work item tracking, and code quality, including Burndown and Burnup charts, Velocity charts, and Cumulative Flow diagrams.
The built-in reports can be accessed directly from the Azure DevOps portal, and you can create custom analytics views using Work Item Query Language (WIQL) to filter and aggregate data.
Here are some key reporting capabilities in Azure DevOps:
- Dashboards
- Built-in Reports
- Analytics Views
- Power BI Integration
- Custom Widgets
- Report Export
- Build and Release Reports
What Is Available
Azure DevOps provides a range of reporting and analytics features to help you track and analyze your software development and delivery processes.
You can create custom dashboards to display relevant widgets and charts, pinning them to dashboards for at-a-glance information on work item progress, build and release status, code quality, and more.
Azure DevOps offers a set of built-in reports that cover various aspects of project management, work item tracking, and code quality, including Burndown and Burnup charts, Velocity charts, and Cumulative Flow diagrams.
Some typical reporting examples include sprint progress, resource burndown and capacity, work item cycle time, and work item predictability and productivity.
You can create custom analytics views using Work Item Query Language (WIQL) to filter and aggregate data, gaining deeper insights into your work item data.
Azure DevOps can be integrated with Microsoft Power BI, allowing you to create custom reports and dashboards to visualize data from Azure DevOps.
Here are some examples of reporting capabilities in Azure DevOps:
- Sprint progress reporting
- Resource burndown and capacity
- Work item cycle time
- Work item predictability and productivity
- Task completion forecasting
- Work item distribution
- CI/CD pipeline failures
- Application testing and release results
These reports can be shared with team members, stakeholders, or external collaborators, and can be exported in various formats, including PDF and Excel.
Exploring Metadata
To explore metadata in Azure DevOps, navigate to the URL https://analytics.dev.azure.com/{organization}/_odata/v3.0-preview/$metadata, replacing {organization} with your organization name.
This will give you an XML document detailing the entities and relationships available in your Azure DevOps account.
You can use OData queries to get data for an entity, such as the Build entity, by pluralizing it and navigating to a URL like https://analytics.dev.azure.com/{organization}/_odata/v3.0-preview/Builds.
Some useful OData query directives include $filter for filtering data, $select for specifying which columns to select, $apply for grouping and aggregating, and $expand for expanding fields from related entities.
To get a list of all builds from Sep 1st to today, you can use the $filter directive to filter the data.
Creating a Report
Creating a report in Azure DevOps is a straightforward process that allows you to gain valuable insights into your software development and delivery processes.
To create a report, you can start by selecting the type of report you want to create, such as a dashboard, built-in report, or analytics view.
Dashboards in Azure DevOps allow you to create custom dashboards that display relevant widgets and charts, providing at-a-glance information on work item progress, build and release status, code quality, and more.
You can also create custom reports by using the Generic Query Designer, which enables you to design a query to retrieve specific data.
Here are the steps to create a query:
1. Select Generic Query Designer on the query builder toolbar.
2. Select Add Table and choose the Current Work Item table.
3. Select Add Table again and choose the Work Item table.
4. Select Add Table and choose the Person table.
5. Select the check boxes for System_Title and System_State in the Work Item table.
6. Select the check box for Person in the Person table.
7. Delete the clauses that use Changed By and Created By.
8. Run the query to verify that it works.
Once you've created your query, you can design the report layout by selecting the report type, choosing the table layout and style, and previewing the report.
Here's a summary of the report design steps:
1. Select Next to advance to the Report Type page.
2. Select Tabular and choose the layout options that you prefer.
3. Select any style and choose the table layout.
4. Preview the report and type a name for the report.
By following these steps, you can create a report that provides valuable insights into your software development and delivery processes.
Deploying and Integrating
To deploy a report in Azure DevOps, start by selecting the report in the Solution Explorer.
In the Build menu, select DeployReportName. Make sure your project settings are set to the right values for the deployment to be successful.
For more information on setting up your project settings, see Create a Report Server Project.
Deploy the Report
To deploy a report, you'll want to follow these simple steps.
Select the report in Solution Explorer.
Next, head to the Build menu and select DeployReportName.
Your project settings must be set to appropriate values for the deployment to be successful.
For more information on setting up your project, check out the section on Create a Report Server Project.
Create REST API Function
To create a REST API function, you'll need to define a function that can call the Azure DevOps API. This function takes a single argument called "project" of type text.
The function is used to get a list of repositories for a given Team Project. You can use it to expand a table with a list of Team Projects to end up with a list of all the repos in an org.
To create the function, you can use the template from this Github repo. It's a good idea to update the auth as instructed in the template to ensure you have the necessary permissions.
Here's a step-by-step guide to creating the function:
1. Define the function with the required argument "project" of type text.
2. Use the function to get a list of repositories for the given Team Project.
3. Update the auth as instructed in the template.
4. Use the function to expand a table with a list of Team Projects to end up with a list of all the repos in an org.
With these steps, you'll be able to create a REST API function that can call the Azure DevOps API and retrieve the necessary data.
Sources
- https://www.blueboxes.co.uk/creating-scheduled-reports-from-azure-devops-with-azure-logic-apps
- https://medium.com/@balaug3/azure-devops-reporting-9bca5b8d190e
- https://learn.microsoft.com/en-us/previous-versions/azure/devops/report/sql-reports/create-a-detailed-report-using-report-designer
- https://colinsalmcorner.com/azure-devops-build-and-test-reports-using-odata-and-rest-in-powerbi/
- https://talos.com.au/azure-devops-power-bi-reporting
Featured Images: pexels.com