I got this solved by applying custom ActionFilter attribute to controllers where I want the logging to happen.
This allowed me to get the Controller and Action using this simple syntax:
{context.ActionDescriptor.RouteValues["controller"]}
{context.ActionDescriptor.RouteValues["action"]}
Resource:
Filters in ASP.NET Core | Microsoft Docs[
^]