Forum Discussion

Anusha66's avatar
Anusha66
Advocate IV
3 months ago
Solved

How to retrieve month-wise usage logs across multiple workspaces or capacity in Microsoft Fabric?

 

I am trying to analyze report usage logs on a monthly/daily basis across multiple workspaces. Currently, I understand that usage/activity logs can be retrieved at the individual workspace level, but I have the following requirement:

  • Need to fetch month-wise logs for each report
  • Across all selected workspaces (or ideally entire capacity)
  • Preferably in a single query/process without iterating workspace-by-workspace

Is there any way in Microsoft Fabric / Power BI to:

  1. Retrieve usage logs centrally for multiple workspaces or entire capacity?
  2. Get aggregated report-level metrics (views, users, etc.) month-wise?
  3. Avoid looping through each workspace individually (for scalability reasons)?

Any guidance, APIs, or best practices (Activity Log, Admin APIs, Fabric monitoring, Log Analytics, etc.) would be really helpful.

Thanks in advance!

  • Hi Anusha66,

    Hope you're doing well!

     

    Here are direct answers to your 3 questions:

     

    Retrieve usage logs centrally for multiple workspaces? Admin Activity Log API or Unified Audit Log, tenant-wide

     

    Aggregated report-level metrics month-wise? via downstream aggregation in Lakehouse/Notebook or KQL in Log Analytics

     

    Avoid workspace-by-workspace looping? Admin API is tenant-scoped; loop over days not workspaces

5 Replies

  • Hi Anusha66 

    To centrally track report usage metrics across your entire tenant or capacity without the overhead of looping through workspaces individually, the recommended enterprise approach is to utilize the Power BI Activity Log API (or its PowerShell wrapper cmdlet Get-PowerBIActivityEvent). Unlike the individual workspace usage metrics or standard scanner APIs that require explicit workspace-by-workspace iteration, the Activity Log API is designed for tenant-level scalability and allows you to fetch all user activities—including report views, queries, and data exports—across all workspaces simultaneously in a single consolidated request stream. Because the API allows you to extract raw events for an entire day at a time using a streaming continuation token pattern, you can eliminate loop-based API throttling by running a daily or monthly extraction script that pipes these raw events into a central repository like a Fabric Lakehouse, Azure Log Analytics, or a SQL database. Once centralized, you can run a single SQL query or DAX expression to group by report ID, workspace ID, and month, instantly yielding aggregated report-level metrics (such as total monthly views and distinct daily/monthly active users) across your entire capacity without hitting the scalability limits of individual workspace connectors.

     

  • Thankyou, tayloramy, oussamahaimoud and Poojara_D12 for your responses.

    Hi Anusha66,

    We appreciate your inquiry through the Microsoft Fabric Community Forum.

    We would like to inquire whether have you got the chance to check the solutions provided by tayloramy, oussamahaimoud and Poojara_D12 to resolve the issue. We hope the information provided helps to clear the query. Should you have any further queries, kindly feel free to contact the Microsoft Fabric community.

    Thank you.

  • Hi Anusha66,

    Hope you're doing well!

     

    Here are direct answers to your 3 questions:

     

    Retrieve usage logs centrally for multiple workspaces? Admin Activity Log API or Unified Audit Log, tenant-wide

     

    Aggregated report-level metrics month-wise? via downstream aggregation in Lakehouse/Notebook or KQL in Log Analytics

     

    Avoid workspace-by-workspace looping? Admin API is tenant-scoped; loop over days not workspaces

  • Hi Anusha66,

    We are following up to see if what we shared solved your issue. If you need more support, please reach out to the Microsoft Fabric community.

    Thank you.