protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);

            // register microsoft & steeltoe services
            ApplicationConfig.Register(Environment.GetEnvironmentVariable("ASPNET_ENVIRONMENT") ?? "Development");

            // build service provider for unity container
            ApplicationConfig.BuildServiceProvider(UnityConfig.Container);

            // start discovery client
            DiscoveryConfig.StartDiscoveryClient();

            //// Start the Hystrix Metrics stream
            //DiscoveryConfig.StartHystrixMetricsStream();

            // register and start management
            ManagementConfig.Register();
            ManagementConfig.Start();

            //// testing IHystrixCommandOptions
            //var options = UnityConfig.Container.Resolve<IHystrixCommandOptions>();
            //Console.Error.WriteLine($"IHystrixCommandOptions {((options == null) ? "not " : string.Empty)} resolved");
        }
        protected void Application_End()
        {
            var logger = UnityConfig.Container.Resolve <ILogger <MvcApplication> >();

            logger.LogInformation("Shutting down!");

            // stop discovery client
            DiscoveryConfig.StopDiscoveryClient();

            // stop management
            ManagementConfig.Stop();
        }