public static FirehoseSink GetFirehoseSink()
        {
            FirehoseSettingsProvider firehoseLogSettingsProvider;

            lock (_lock)
            {
                var configProvider = new Tavisca.Common.Plugins.Configuration.ConfigurationProvider("hotel_content_service");
                firehoseLogSettingsProvider = new FirehoseSettingsProvider(configProvider);
            }
            var firehoseSink = new FirehoseSink(firehoseLogSettingsProvider);

            return(firehoseSink);
        }
        public static RedisSink GetRedisSink()
        {
            //var redisLogSettings = new RedisLogSettings
            //{
            //    ApiSetting = new RedisSetting
            //    {
            //        Hosts = new List<RedisHost> {
            //            new RedisHost
            //            {
            //                Url = "master.travel-qa-logging.l86run.use1.cache.amazonaws.com",
            //                Port = "6379",
            //                IsSslEnabled = true
            //            }
            //        },
            //        QueueName = "travel-qa-logging-api"
            //    },
            //    ExceptionSetting = new RedisSetting
            //    {
            //        Hosts = new List<RedisHost> {
            //            new RedisHost
            //            {
            //                Url = "master.travel-qa-logging.l86run.use1.cache.amazonaws.com",
            //                Port = "6379",
            //                IsSslEnabled = true
            //            }
            //        },
            //        QueueName = "travel-qa-logging-exception"
            //    },
            //    TraceSetting = new RedisSetting
            //    {
            //        Hosts = new List<RedisHost> {
            //            new RedisHost
            //            {
            //                Url = "master.travel-qa-logging.l86run.use1.cache.amazonaws.com",
            //                Port = "6379",
            //                IsSslEnabled = true
            //            }
            //        },
            //        QueueName = "travel-qa-logging-trace"
            //    }
            //};

            RedisLogSettingsProvider redisLogSettings;

            lock (_lock)
            {
                var configProvider = new Tavisca.Common.Plugins.Configuration.ConfigurationProvider("hotel_content_service");
                redisLogSettings = new RedisLogSettingsProvider(configProvider);
            }
            return(new RedisSink(redisLogSettings));
        }
        public static FirehoseSink GetCrossAccountFirehoseSink()
        {
            FirehoseSettingsProvider firehoseLogSettingsProvider;

            lock (_lock)
            {
                var configurationBuilder = new ConfigurationBuilder();
                configurationBuilder.WithSensitiveDataProvider(new ParameterStoreProvider());
                var configProvider = new Tavisca.Common.Plugins.Configuration.ConfigurationProvider("test_arn_app", configurationBuilder);
                firehoseLogSettingsProvider = new FirehoseSettingsProvider(configProvider);
            }
            var firehoseSink = new FirehoseSink(firehoseLogSettingsProvider);

            return(firehoseSink);
        }