What's new in Dynamics 365 Business Central telemetry - January 2023

What's new in Dynamics 365 Business Central telemetry - January 2023

It is January and it has been a month since the last newsletter. December was a quiet month with regards to telemetry, but a few things are worth mentioning.

As always, the bleeding edge news on Dynamics 365 Business Central telemetry happens on Twitter, so if you want to keep up with the latest and greatest (and the beta versions of the Power BI telemetry apps) then follow me there (@kennienp). The intention of these monthly newsletters is to try to gather everything that I know and learn about this area and present it here. Let’s go…

In the January 2023 edition, read about

  • Telemetry Heros – are you one?
  • Power BI Usage apps – January updates
  • New signal/updates?
  • Documentation improvements
  • Tips and Tricks


Telemetry Heros

Adopting any new technology or a change in processes takes time and requires lots of communication and evangelizing. The use of telemetry is no difference. Within our community we have some frontrunners are going that extra mile to learn and help others learn and to give them some credit and visibility, I decided to start the Telemetry Heros club. Members of the club are people who write blog posts, make videos, are active on social media, contribute to the BCTech repo, and do presentations on telemetry and the way that telemetry can be used to change the way Business Central customers and partners work with the system. Telemetry Heros can flash the Telemetry Hero icon online (if they want to) and they get information on the topic a bit earlier than others.

If you believe that you (or a friend) is a Telemetry Hero, please nominate them to me and write why you think that they should be a member of the club.


Which Power BI app should we use?

From time to time, I get the question “Which Power BI app should we use?”. I get that this can be confusing, as there are two Power BI apps for Business Central telemetry: one for environment telemetry and one for app telemetry. Each of these types of telemetry have their own set of signal (with some overlap), and they cater for different partner personas and scenarios.

You can read more about the two types of telemetry here: https://learn.microsoft.com/en-us/dynamics365/business-central/dev-itpro/administration/telemetry-overview#environment-level-and-appextension-level-telemetry

?

For things related to environments, use the Power BI app “Dynamics 365 Business Central Usage Analytics” (this has a grey colour scheme and shows the Business Central icon):

Screenshot from Appsource showing the Environment Usage app

?

For things related to Appsource apps or per-tenant extensions (PTE), use the Power BI app “Dynamics 365 Business Central App Usage Analytics” (this has a blue colour scheme and shows the AL language icon):

Screenshot from Appsource showing the App Usage app

Blog posts and videos

Did you know that the BCTech repo has pages with links to blog posts and videos on telemetry?

Blogs: https://github.com/microsoft/BCTech/blob/master/samples/AppInsights/BLOGS.md

Videos: https://github.com/microsoft/BCTech/blob/master/samples/AppInsights/VIDEOS.md

If you create blog posts/videos on telemetry (or know of things that are not linked from these two pages), feel free to do a pull request to the repository (or send me an email/message)


Power BI Usage apps – January updates

First, some updates on uptake and MAU of the Power BI apps: The UK has joined the club of countries with 100+ MAU. Way to go, UK!. This club now have four members (United States, Germany, Netherlands, and UK) with Denmark as one of the next countries that seem to be joining soon.

We also now have more than 800 apps that refresh data every day. This means that data is available for partners and customers to analyze right away in case there are questions on usage or issues that need taken care of.

?

The January update for the apps have a lot of new features and improvements. Here as some highlights:

In both apps

  • Faster data refresh and also ability to load larger datasets
  • Performance report: enhanced pages for long running SQL queries, Report performance, and in/outgoing web service calls. New page showing results from the Performance Toolkit (BCPT)

?For telemetry databases with a lot of data, refreshing the app can take a long time (and sometimes they even time out so that you need to lower the lookback period). Therefore, I tuned the datasets to make them load data faster and also increased the timeout values for the queries. Hopefully, this should help on larger datasets. If you have issues loading data, please ping me so that I can keep tuning the apps.

?

During December, I was involved in numerous support calls with partners that tried to use the Power BI apps for troubleshooting performance issues. Based on feedback and these experiences, I made some changes to some of the pages in the performance report.

First of all, the page for long running SQL queries data now has an “Explanation” column that explains what the SQL does and have suggestions for tuning.

LRQ report with new SQL explanation column


Second, the page for Report data now shows better descriptive statistics to help you find troublesome reports.

Report performance with new statistics visual


We finally got the telemetry in place for the Performance Toolkit and therefore the Power BI apps now also have a page that shows data from performance toolkit runs. Hopefully this will help you track performance regressions over time.

New BCPT page



Environment Usage app

In the January update, we just added one small change:

On the Error report

  • Job Queue errors: Ability to go to the Job Queue page in-client for further troubleshooting

Install/update from

aka .ms/bctelemetryreport

(remove the space)

See the full change log here:

https://github.com/microsoft/BCTech/blob/master/samples/AppInsights/PowerBI/Reports/AppSource/environment-app-pbix/changelog.txt


App Usage app

Apart from the changes described above for both apps, the app usage app did not get any new features in the January update.

Install/update from

aka .ms/bctelemetry-isv-app

(remove the space)


Please review/rate the apps

If you use the Power BI apps, please review/rate them on Appsource. It only takes a few minutes. This is how you do that:

No alt text provided for this image

You can either just give the app a rating or you can additionally write a review

No alt text provided for this image

I read very single comment and appreciate all feedback. Your rating/feedback helps me spread the word on how the apps help change the way you deal with Business Central projects/apps.


New signal/updates

Two changes happened to the raw telemetry that is emitted from Business Central:

  1. Data from runs of the Performance Toolkit (BCPT)
  2. Data about user licenses (online only) can be inferred from login telemetry


Telemetry data from runs of the Performance Toolkit (BCPT) is finally supported as of version 21.). Sample KQL queries are already available here

https://github.com/microsoft/BCTech/blob/master/samples/AppInsights/KQL/Queries/ExampleQueriesForEachArea/PerformanceToolkit.kql

and docs will be updated as well.

?

?

Telemetry event RT0003 (OnCompanyOpen succeeded) has always included a custom dimension called entitlementSetIds. You can use this to lookup the kind of licence that the user has (if you know where to look). The dimension contains GUIDs that are documented here

ttps://learn.microsoft.com/en-us/azure/active-directory/enterprise-users/licensing-service-plan-reference

For your convenience, I added the mapping

userLicenseType = case(

customDimensions.entitlementSetIds has 'd397d6c6-9664-4502-b71c-66f39c400ca4', 'DYN365_BUSCENTRAL_ENVIRONMENT'

, customDimensions.entitlementSetIds has '920656a2-7dd8-4c83-97b6-a356414dbd36', 'DYN365_FINANCIALS_BUSINESS'

, customDimensions.entitlementSetIds has '170991d7-b98e-41c5-83d4-db2052e1795f', 'DYN365_FINANCIALS_ACCOUNTANT'

, customDimensions.entitlementSetIds has '3f2afeed-6fb5-4bf9-998f-f2912133aead', 'PROJECT_MADEIRA_PREVIEW_IW'

, customDimensions.entitlementSetIds has '8e9002c0-a1d8-4465-b952-817d2948e6e2', 'DYN365_BUSCENTRAL_PREMIUM'

, customDimensions.entitlementSetIds has 'd9a6391b-8970-4976-bd94-5f205007c8d8', 'DYN365_FINANCIALS_TEAM_MEMBERS'

, customDimensions.entitlementSetIds has 'API.ReadWrite.All', 'API'

, 'UNKNOWN'

) ?

to the sample KQL query

https://github.com/microsoft/BCTech/blob/master/samples/AppInsights/KQL/Queries/ExampleQueriesForEachArea/Authorization.kql

?

?

Coming soon/in the works (no ETA given)

  • AL stack trace will be added to job queue error signal (21.3/21.4 timeline).
  • Error message in English will be added to error dialog signal (21.3/21.4 timeline).
  • Ability for on-premises environments to set Environment Name as part of mounting.
  • Error codes in failed OData calls to help troubleshoot 400 return code signal.
  • PTE validation signal (PTEs that block updates to next major)

?

Tips and Tricks

Did you know that Business Central has a feature that allows you to track data changes to specific fields? The feature was designed with auditing of sensitive fields in mind (bank accounts, credit card numbers, etc.), but you can also setup field monitoring on configuration tables. This can be very useful because you can now use the Field change page in the Administration report to track configuration changes. And you can also setup alerts on this.

Read more about the field monitoring feature here:

Auditing changes - Business Central | Microsoft Learn

Read more about alerting here:

https://learn.microsoft.com/en-us/dynamics365/business-central/dev-itpro/administration/telemetry-alert

And get the alerting KQL sample code here:

https://github.com/microsoft/BCTech/tree/master/samples/AppInsights/Alerts#alerting-condition-kql-samples

?

?

Sometimes, you would like to know what happened in a session prior to an event you see in telemetry. You can use the Application Insights session id (called operation_Id) to do this. To make that analysis super easy for you to perform, I wrote a Kusto query that does it.

Get the KQL query here:

https://github.com/microsoft/BCTech/blob/master/samples/AppInsights/KQL/Queries/HelperQueries/FollowTheSessionId.kql


Microsoft MVP (and Telemetry Hero) Stefano Demiliani added a code sample for a Logic App that you can use to alert on telemetry and post an adaptive card to Teams.

Get the source code here from BCTech: https://github.com/microsoft/BCTech/tree/master/samples/AppInsights/Alerts/AlertingLogicAppTemplates

Read more about it on Stefanos blog here: https://demiliani.com/2022/12/19/dynamics-365-business-central-telemetry-report-as-adaptive-card-on-teams/

Get KQL samples for alerting here:

https://github.com/microsoft/BCTech/tree/master/samples/AppInsights/Alerts#alerting-condition-kql-samples


That’s all folks!

That's it for the January newsletter. If you made it all the way down here, then you are truly a Telemetry Hero. See you in a month.

Stefan Preusler

Power BI Custom Visuals | Focus on Risk and Project Management

1 年

Great article!

回复

要查看或添加评论,请登录

Kennie Nybo Pontoppidan的更多文章

社区洞察

其他会员也浏览了