Forum Discussion

Suneel2429's avatar
Suneel2429
Regular Visitor
1 year ago
Solved

Power Bi Service Usage metric report doesn't work for Dynamic RLS ?

Hi Team,

 

If any one can please confirm does in power bi service usage metric report doesn't work for Dynamic RLS ?

When i generate usage metric report it allows 0 views and typical opening time also shows 0.

 

suparnababu8 

  • Hi Suneel2429  From my understanding, it doesn’t seem like Power BI Service’s usage metrics report supports Dynamic RLS (Row-Level Security). Metrics are aggregated across all users, so RLS-specific views aren't accounted for, often leading to metrics like "0 views" or inaccurate data. For tracking under RLS, custom logging or Azure Monitor might be better options.

  • Hi Suneel2429 

     

    Some reports that use speicific functions with RLS  might not work correcctly due to a known issue. Pls read more about know issue here Known issue - Reports that use functions with RLS don't work - Microsoft Fabric | Microsoft Learn

    You can define RLS for a table that contiains measures. USERELATIONSHIP() and CROSSFILTER() functions can not be used in the measurees. A change was recenlty made to enforce this requirement.

     

    Thank you!

     

    Did I answer your question? Mark my post as a solution!

    Proud to be a Super User!

     

  • Hi Suneel2429 

    Hello and thanks for reaching out to the Fabric Community.

    Built-in Usage Metrics in the Power BI Service aggregates telemetry under a service account, so Dynamic RLS filters aren’t applied—that’s why you see 0 views and 0 typical opening time when you run Usage Metrics against an RLS-secured dataset
    Workarounds you can consider:

    Audit Logs / REST API: Pull “ViewReport” events from the Power BI audit log via the ActivityEvents REST API or PowerShell, then build your own usage dashboard.

    Premium / Log Analytics: On Premium / PPU, stream workspace-level telemetry to Azure Monitor Log Analytics and write Kusto queries to filter events by user and report.

    Embedded Telemetry: In embedded scenarios, hook into the JavaScript API’s report.on("loaded") and report.on("rendered") events to log each user’s report loads yourself.


    As mentioned suparnababu8 currently, there’s no native support in the out-of-the-box Usage Metrics feature for Dynamic RLS. I hope this helps you understand the behavior and choose the right alternative.

     

    If the above information is helpful, please give us Kudos and mark the response as Accepted as solution.
    Best Regards,
    Community Support Team _ C Srikanth.

     

3 Replies

  • Hi Suneel2429  From my understanding, it doesn’t seem like Power BI Service’s usage metrics report supports Dynamic RLS (Row-Level Security). Metrics are aggregated across all users, so RLS-specific views aren't accounted for, often leading to metrics like "0 views" or inaccurate data. For tracking under RLS, custom logging or Azure Monitor might be better options.

  • Hi Suneel2429 

     

    Some reports that use speicific functions with RLS  might not work correcctly due to a known issue. Pls read more about know issue here Known issue - Reports that use functions with RLS don't work - Microsoft Fabric | Microsoft Learn

    You can define RLS for a table that contiains measures. USERELATIONSHIP() and CROSSFILTER() functions can not be used in the measurees. A change was recenlty made to enforce this requirement.

     

    Thank you!

     

    Did I answer your question? Mark my post as a solution!

    Proud to be a Super User!

     

  • v-csrikanth's avatar
    v-csrikanth
    Community Support

    Hi Suneel2429 

    Hello and thanks for reaching out to the Fabric Community.

    Built-in Usage Metrics in the Power BI Service aggregates telemetry under a service account, so Dynamic RLS filters aren’t applied—that’s why you see 0 views and 0 typical opening time when you run Usage Metrics against an RLS-secured dataset
    Workarounds you can consider:

    Audit Logs / REST API: Pull “ViewReport” events from the Power BI audit log via the ActivityEvents REST API or PowerShell, then build your own usage dashboard.

    Premium / Log Analytics: On Premium / PPU, stream workspace-level telemetry to Azure Monitor Log Analytics and write Kusto queries to filter events by user and report.

    Embedded Telemetry: In embedded scenarios, hook into the JavaScript API’s report.on("loaded") and report.on("rendered") events to log each user’s report loads yourself.


    As mentioned suparnababu8 currently, there’s no native support in the out-of-the-box Usage Metrics feature for Dynamic RLS. I hope this helps you understand the behavior and choose the right alternative.

     

    If the above information is helpful, please give us Kudos and mark the response as Accepted as solution.
    Best Regards,
    Community Support Team _ C Srikanth.