コード例 #1
0
        public ListShardsResponse ListShards(ListShardsRequest request)
        {
            using (ServiceRequest sReq = new ServiceRequest())
            {
                sReq.Method   = HttpMethod.Get;
                sReq.Endpoint = BuildReqEndpoint(request);

                sReq.ResourcePath = LogConsts.RESOURCE_LOGSTORES
                                    + LogConsts.RESOURCE_SEPARATOR
                                    + request.Logstore
                                    + LogConsts.RESOURCE_SHARDS;

                FillCommonHeaders(sReq);
                FillCommonParameters(sReq);

                request.AddSpecHeadersTo(sReq.Headers);
                request.AddSpecParamsTo(sReq.Parameters);

                ExecutionContext context = new ExecutionContext();
                context.Signer      = new LogRequestSigner(sReq.ResourcePath, HttpMethod.Get);
                context.Credentials = new ServiceCredentials(this.AccessKeyId, this.AccessKey);

                using (ServiceResponse response = serviceClient.Send(sReq, context))
                {
                    LogClientTools.ResponseErrorCheck(response, context.Credentials);
                    JArray             body           = LogClientTools.ParserResponseToJArray(response.Content);
                    ListShardsResponse listShardsResp = new ListShardsResponse(response.Headers, body);
                    return(listShardsResp);
                }
            }
        }
コード例 #2
0
ファイル: Status.cs プロジェクト: mazum/aws-demo
        static async Task Main(string[] args)
        {
            const string accessKey = "<Access Key>";
            const string secretKey = "<Secret Key>";

            AmazonKinesisClient client = new AmazonKinesisClient(accessKey, secretKey, RegionEndpoint.USEast2);
            var request = new ListShardsRequest()
            {
                StreamName = args[0]
            };

            while (true)
            {
                var response = await client.ListShardsAsync(request);

                Console.Clear();
                foreach (var shard in response.Shards)
                {
                    Console.WriteLine($"Shard {shard.ShardId}");
                }
                Thread.Sleep(1000);
            }
        }