How to Write a Custom Logging Provider in ASP.NET Core