Build as a Service

The true story behind my build service for NAV/BC

Usually, I write posts about a certain technical subject, but not today.
Today I’ll tell you the true story behind my build service for NAV/BC and I hope I’ve challenged you by the time you reach the end of this post.

Today is a good day, today the 1000th build ran on my CI service for Dynamics 365 BC/NAV and that feels like a huge achievement if I look back at how this all started.
I initially came up with this idea of a generic build service almost two years ago, in those two years the code has been rewritten twice and I’ve changed from a build API approach to a service exclusively for Azure DevOps.
Next to that, Docker came around, Business Central replaced NAV, C/SIDE is now retired, we got AL in return and I probably forgot to mention a lot of other disruptors.



Business Central Telemetry Part 2: Sending Telemetry to Azure Log Analytics

In my previous blog post, we looked at how to authenticate and call the Business Central Admin Center Telemetry API, we ended up with a response message that we could not deserialize into a C# class.
Luckily some guys from Microsoft stumbled upon my blog post and asked for feedback, which resulted in a backlog item on their side to provide key-value pairs in the response. Thanks guys and keep reading my blog posts ūüėČ

Today we’ll look at how to transform the response into a class that we can then use to create a JSON message that’s importable by Azure Log Analytics.
Azure Log Analytics is the place where logs from all kinds of different resources come together for further analysis, these resources can be virtual machines, logs from Azure Functions or security events from the Azure platform itself, but there’s also a data collector API and that’s where we will send the Business Central telemetry to.


Dynamics 365 Business Central

Business Central Telemetry Part 1: Consuming the API

With Business Central you get something called Business Central Admin Center, the place where tenant admins and delegated admins (the partner associated with the tenant) perform admin tasks like manage environments, set upgrade windows and view telemetry.

Everything you can do through the admin center can also be done through the APIs, today we’ll have a look at how to consume the telemetry API from a simple C# console application and create the foundation for the next blog post where we will go one step further and transform the data returned by the API into a proper JSON structure that can be sent to Azure Log Analytics.



The performance impact of events

For the people that missed out on the session called ‘Performance: Business Central reloaded for the Cloud’ at the #navtechdays this year, it’s extremely important to catch-up with the topics discussed as this was the most informative session at the event.
One key takeaway of the session is about that magic thing that solves all our problems when going from C/AL to AL, that’s right, we’re talking about events!

Oh, and by the way, the recording of that session can be found here.


Dynamics 365 Business Central

Using upgrade tags to facilitate continuous upgrade

What do you do when you need to kill some time in a hotel before the NAV TechDays break loose? That’s right, write a¬†blog¬†post!
This one has been on my list for quite some time now but there were always more interesting things to blog about, but now it’s time to finally take care of the Upgrade Tags.

Somewhere in the development of Business Central the table Upgrade Tag and codeunit Upgrade Tag Mgt. appeared, but what are they meant for?
Let’s find out!