コード例 #1
0
        private void initializeParameters()
        {
            SSMParameter hostnameParameter = SSMClient.Instance.GetParameter(SSMLibrary.Constants.POD_ELASTICACHE_MEMCACHED_URL_PATH);

            HostName = hostnameParameter.Value;

            SSMParameter portParameter = SSMClient.Instance.GetParameter(SSMLibrary.Constants.POD_ELASTICACHE_MEMCACHED_PORT_PATH);

            Port = int.Parse(portParameter.Value);
        }
コード例 #2
0
ファイル: AWSLogger.cs プロジェクト: talkolker/DataExtractor
        private static string getDeliveryStream()
        {
            string       selectedDeliveryStream = string.Empty;
            SSMParameter streamsParameter       = SSMClient.Instance.GetParameter(SSMLibrary.Constants.FSL_FIREHOSE_STREAM_PATH);

            if (streamsParameter != null && !string.IsNullOrEmpty(streamsParameter.Value))
            {
                string[] deliveryStreams = streamsParameter.Value.Split(',', StringSplitOptions.RemoveEmptyEntries);
                if (deliveryStreams.Length > 0)
                {
                    m_StreamIndex         %= deliveryStreams.Length;
                    selectedDeliveryStream = deliveryStreams[m_StreamIndex];
                    m_StreamIndex++;
                }
            }
            return(selectedDeliveryStream);
        }
コード例 #3
0
ファイル: AWSLogger.cs プロジェクト: talkolker/DataExtractor
        private void updateAmazonKinesisFirehoseClient()
        {
            bool isOldClientNeedsRecreation = m_ClientCreatedDateTime == DateTime.MinValue ||
                                              DateTime.Now.Subtract(m_ClientCreatedDateTime) >= TimeSpan.FromHours(1);

            if (m_shouldInitializeClient && isOldClientNeedsRecreation)
            {
                try
                {
                    SSMParameter arnParameter = SSMClient.Instance.GetParameter("/FSL/Firehose/ARN");
                    string       firehoseArn  = arnParameter?.Value;

                    SSMParameter   regionParameter        = SSMClient.Instance.GetParameter(SSMLibrary.Constants.FSL_FIREHOSE_REGION_PATH);
                    RegionEndpoint firehoseRegionEndpoint = RegionEndpoint.GetBySystemName(regionParameter.Value);

                    if (string.IsNullOrEmpty(firehoseArn))
                    {
                        // Create client without assume role, same account as firehose.
                        m_Client = new AmazonKinesisFirehoseClient(firehoseRegionEndpoint);
                    }
                    else
                    {
                        // Create client with assume role
                        SSMParameter STSRegion = SSMClient.Instance.GetParameter("/FSL/Firehose/STSRegion");
                        AmazonSecurityTokenServiceClient stsClient = new AmazonSecurityTokenServiceClient(RegionEndpoint.GetBySystemName(STSRegion.Value));
                        AssumeRoleRequest stsRequest = new AssumeRoleRequest
                        {
                            RoleArn         = firehoseArn,
                            RoleSessionName = string.Format("{0}_{1}_Monitoring", m_Product, m_Feature)
                        };
                        AssumeRoleResponse stsResult = stsClient.AssumeRoleAsync(stsRequest).Result;
                        m_Client = new AmazonKinesisFirehoseClient(stsResult.Credentials, firehoseRegionEndpoint);
                    }
                    m_ClientCreatedDateTime = DateTime.Now;
                }
                catch (Exception ex)
                {
                    m_logger.LogError(string.Format("Failed to initialize AWSLogger\n{0}", LogUtils.GetExceptionDetails(ex)));
                }
            }
        }