Application logging to Azure using SeriLog

I'm in the process of creating a cloud-based application that needs to scale well and I'm thinking about error management and logging. There will be a follow up post about the application itself, but for now I want to focus on the logging bit. In my quest to find the right tool, I remembered reading about [Serilog](https://github.com/serilog/serilog" target="_blank) some time ago. I've been meaning to try Serilog but I had to find the right project/opportunity. And now I finally got it! The thing I like about Serilog is that it’s …[read more]


Copy Azure blob data between storage accounts using Functions

Microsoft's Azure Functions are pretty amazing for automating workloads using the power of the Cloud. Unlike their predecessor, WebJobs, Functions are an extremely simple yet powerful tool at your disposal. In addition, unlike WebJobs, they don't share the workload with anything else, so you can push them to the limit. They are also extremely scalable and run concurrently, making them ideal for all your back-end processing. I recently used Azure Functions to copy blob storage data from one subscription to another. If you intend to copy data within the same subscription, then your task is even simpler and you can …[read more]


Working with Azure ARM Templates in Visual Studio Code

These days I spend a lot of time working with Azure. I also make a conscious effort to use all the tools available when managing my Azure resources. This helps me get a better understanding of the platform and allows me to move freely between devices. So what are these tools? Let's break it down: Visual Studio Azure CLI The portal PowerShell Add Azure Resource Management (ARM) templates on top of these and you can see how provisioning and managing resources is now a much better experience. In addition, ARM templates allow us to take full advantage of CI/CD …[read more]


Options for Migrating Azure VMs from ASM (v1) to ARM (v2)

Today, the Azure portal allows you to create 2 types of VMs. These types refer mainly to the platform atop which your VMs run. Before I continue with this post, it may be handy establishing what the terminology means: Classic/ASM Classic or v1 VMs run on top of the older Azure Service Management (ASM) technology. ASM infrastructures can be managed through both the old and the new portals and Azure PowerShell/CLI. However, some of the v1 features are not yet, and may never be, available on the new Azure Portal. New/ARM Resource Manager or v2 VMs run …[read more]


Fix OmniSharp error 'No default runtime found' in Visual Studio Code on Windows

I wanted to mess around with [.NET Core](https://dotnet.github.io/getting-started/#/windows" target="_blank) on my machine and create a simple application. I'm not talking about [ASP.NET Core 1.0](https://get.asp.net/" target="_blank) but .NET Core 1.0. And yes, they are different! Very different. The .NET Core applications rely on the dotnet toolchain whereas ASP.NET Core ones rely on the dnx, dnvm, dnu toolchain. Can it get any more confusing? Of course it can, just wait until you have to start targeting frameworks in your libraries. It's awesome( …[read more]


How can I migrate my Azure VMs to Azure Resource Management (ARM) stack?

That's a perfectly good question and one that many teams are facing lately. There is a valid reason to want to upgrade. The Azure Resource Manager (ARM) has a lot of advantages over it's predecessor. The biggest one is automation. ARM templates allow you to easily capture, configure and deploy resources and resource groups on Azure using PoSH (PowerShell) and simple Json files. This is great for DevOps! If you're starting with Azure now, then ARM makes absolute sense and is the default option. However, there are many companies that are stuck in v1 i.e the Azure Service Management …[read more]


How to get started with blogging

You decided to start blogging, great! Or you’re one of these people that think about blogging but haven’t started yet (I’m looking at you David) because you have no idea where to start. In this post I’ll try to give you some advice on how to go about get a blog started and how to ensure that you own and manage your content in the best possible format. My advice may even help seasoned bloggers as we all learn as we go and the tools we’re so accustomed change – FAST! If you’re a developer …[read more]


PowerShell for the Gui People or FTGP

Yes seriously, that's the title of this post. And I'll explain why. Many of us use PowerShell (PoSH) for automation. If you are working on Windows and you don't use PoSH for automating and scripting basic tasks then you're missing out big. PoSH, which started as one of the first Open Source projects in Microsoft, is deeply ingrained into Windows. Both on the server and the client. It's a beautiful and powerful scripting language that allows you to not only manage you Windows OS but services such as BizTalk, SQL Server, IIS etc. The list is big. Microsoft Azure also …[read more]