static void Main(string[] args)
        {
            //var config = new DatadogConfiguration()
            //    //.WithWithStatsdServer("127.0.0.1", 8125)
            //    .WithHostname("passport")
            //    ;

            var storage = CloudStorageAccount.DevelopmentStorageAccount;

            var rootLogger = new LoggerConfiguration()
                             //.ReadFrom.AppSettings()
                             //.WriteTo.File("log.txt")
                             //.WriteTo.Sink(new FileSink(@"log.json", new JsonFormatter(false, null, true), null))
                             //.Enrich.FromLogContext()
                             //.Destructure.UsingAttributes()
                             .Destructure.JsonNetTypes()
                             .WriteTo.AzureTableStorageWithProperties(storage)
                             .MinimumLevel.Debug()
                             //.WriteTo.Loggly()
                             .CreateLogger();

            var passportLogger = new LoggerConfiguration()
                                 .MinimumLevel.Debug()
                                 .WriteTo.Sink(new PassportSink(rootLogger))
                                 .Destructure.JsonNetTypes()
                                 .CreateLogger();

            _storage = new Storage.Serilog.PassportStorageService(passportLogger);

            PassportLevel.Current = PassportLevel.Debug;

            //var result = WithControllerUsingService().Result;
            var result = WithControllerAsyncTest().Result;

            System.Console.WriteLine("press any key to continue");
            System.Console.ReadKey();

            _storage.Flush();
        }
        static void Main(string[] args)
        {
            //var config = new DatadogConfiguration()
            //    //.WithWithStatsdServer("127.0.0.1", 8125)
            //    .WithHostname("passport")
            //    ;

            var storage = CloudStorageAccount.DevelopmentStorageAccount;

            var rootLogger = new LoggerConfiguration()
                //.ReadFrom.AppSettings()
                //.WriteTo.File("log.txt")
                //.WriteTo.Sink(new FileSink(@"log.json", new JsonFormatter(false, null, true), null))
                //.Enrich.FromLogContext()
                //.Destructure.UsingAttributes()
                .Destructure.JsonNetTypes()
                .WriteTo.AzureTableStorageWithProperties(storage)
                .MinimumLevel.Debug()
                //.WriteTo.Loggly()
                .CreateLogger();
            
            var passportLogger = new LoggerConfiguration()
                .MinimumLevel.Debug()
                .WriteTo.Sink(new PassportSink(rootLogger))
                .Destructure.JsonNetTypes()
                .CreateLogger();

            _storage = new Storage.Serilog.PassportStorageService(passportLogger);

            PassportLevel.Current = PassportLevel.Debug;

            //var result = WithControllerUsingService().Result;
            var result = WithControllerAsyncTest().Result;

            System.Console.WriteLine("press any key to continue");
            System.Console.ReadKey();

            _storage.Flush();
        }