Esta documentação é somente para a versão 1 da AWS CLI. Para obter a documentação relacionada à AWS CLI versão 2, consulte o Guia do usuário da versão 2.
Exemplos do Kinesis usando o AWS CLI
Os exemplos de código a seguir mostram como realizar ações e implementar cenários comuns usando o AWS Command Line Interface com o Kinesis.
Ações são trechos de código de programas maiores e devem ser executadas em contexto. Embora as ações mostrem como chamar perfis de serviço individuais, você pode ver as ações no contexto em seus cenários relacionados.
Cada exemplo inclui um link para o código-fonte completo, em que você pode encontrar instruções sobre como configurar e executar o código.
Tópicos
Ações
O código de exemplo a seguir mostra como usar add-tags-to-stream
.
- AWS CLI
-
Para adicionar tags a um fluxo de dados
O exemplo
add-tags-to-stream
a seguir atribui uma tag com a chavesamplekey
e o valorexample
ao fluxo especificado.aws kinesis add-tags-to-stream \ --stream-name
samplestream
\ --tagssamplekey=example
Este comando não produz saída.
Para obter mais informações, consulte Adicionar tags a fluxos no Guia do desenvolvedor do Amazon Kinesis Data Streams.
-
Para ver detalhes da API, consulte AddTagsToStream
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar create-stream
.
- AWS CLI
-
Como criar um fluxo de dados
O exemplo de
create-stream
a seguir cria um fluxo de dados chamado samplestream com três fragmentos.aws kinesis create-stream \ --stream-name
samplestream
\ --shard-count3
Este comando não produz saída.
Para obter mais informações, consulte Criar um fluxo no Guia do desenvolvedor do Amazon Kinesis Data Streams.
-
Para obter detalhes da API, consulte CreateStream
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar decrease-stream-retention-period
.
- AWS CLI
-
Como diminuir o período de retenção do fluxo de dados
O exemplo
decrease-stream-retention-period
a seguir reduz o período de retenção (o período em que os registros de dados ficam acessíveis depois de serem adicionados ao fluxo) de um fluxo chamado samplestream para 48 horas.aws kinesis decrease-stream-retention-period \ --stream-name
samplestream
\ --retention-period-hours48
Este comando não produz saída.
Para obter mais informações, consulte Alterar o período de retenção de dados no Guia do desenvolvedor do Amazon Kinesis Data Streams.
-
Para ver detalhes da API, consulte DecreaseStreamRetentionPeriod
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar delete-stream
.
- AWS CLI
-
Como excluir um fluxo de dados
O exemplo de
delete-stream
a seguir exclui o fluxo de dados especificado.aws kinesis delete-stream \ --stream-name
samplestream
Este comando não produz saída.
Para obter mais informações, consulte Excluir um fluxo no Guia do desenvolvedor do Amazon Kinesis Data Streams.
-
Para obter detalhes da API, consulte DeleteStream
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar deregister-stream-consumer
.
- AWS CLI
-
Como cancelar o registro de um consumidor de fluxo de dados
O exemplo
deregister-stream-consumer
a seguir cancela o registro do consumidor especificado do fluxo de dados especificado.aws kinesis deregister-stream-consumer \ --stream-arn
arn:aws:kinesis:us-west-2:123456789012:stream/samplestream
\ --consumer-nameKinesisConsumerApplication
Este comando não produz saída.
Para obter mais informações, consulte Desenvolver consumidores com Fan-Out aprimorado usando a API Kinesis Data Streams no Guia do desenvolvedor do Amazon Kinesis Data Streams.
-
Para ver detalhes da API, consulte DeregisterStreamConsumer
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar describe-limits
.
- AWS CLI
-
Para descrever os limites de fragmentos
O exemplo
describe-limits
a seguir mostra os limites e uso de fragmentos na conta da AWS atual.aws kinesis describe-limits
Saída:
{ "ShardLimit": 500, "OpenShardCount": 29 }
Para obter mais informações, consulte Refragmentar um fluxo no Guia do desenvolvedor do Amazon Kinesis Data Streams.
-
Para ver detalhes da API, consulte DescribeLimits
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar describe-stream-consumer
.
- AWS CLI
-
Para descrever um consumidor de fluxo de dados
O exemplo
describe-stream-consumer
a seguir retorna a descrição do consumidor especificado, registrado com o fluxo de dados especificado.aws kinesis describe-stream-consumer \ --stream-arn
arn:aws:kinesis:us-west-2:012345678912:stream/samplestream
\ --consumer-nameKinesisConsumerApplication
Saída:
{ "ConsumerDescription": { "ConsumerName": "KinesisConsumerApplication", "ConsumerARN": "arn:aws:kinesis:us-west-2:123456789012:stream/samplestream/consumer/KinesisConsumerApplication:1572383852", "ConsumerStatus": "ACTIVE", "ConsumerCreationTimestamp": 1572383852.0, "StreamARN": "arn:aws:kinesis:us-west-2:123456789012:stream/samplestream" } }
Para obter mais informações, consulte Ler dados do Amazon Kinesis Data Streams no Guia do desenvolvedor do Amazon Kinesis Data Streams.
-
Para ver detalhes da API, consulte DescribeStreamConsumer
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar describe-stream-summary
.
- AWS CLI
-
Para descrever um resumo de um fluxo de dados
O exemplo
describe-stream-summary
a seguir fornece uma descrição resumida (sem a lista de fragmentos) do fluxo de dados especificado.aws kinesis describe-stream-summary \ --stream-name
samplestream
Saída:
{ "StreamDescriptionSummary": { "StreamName": "samplestream", "StreamARN": "arn:aws:kinesis:us-west-2:123456789012:stream/samplestream", "StreamStatus": "ACTIVE", "RetentionPeriodHours": 48, "StreamCreationTimestamp": 1572297168.0, "EnhancedMonitoring": [ { "ShardLevelMetrics": [] } ], "EncryptionType": "NONE", "OpenShardCount": 3, "ConsumerCount": 0 } }
Para obter mais informações, consulte Criar e gerenciar fluxos no Guia do desenvolvedor do Amazon Kinesis Data Streams.
-
Para ver detalhes da API, consulte DescribeStreamSummary
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar describe-stream
.
- AWS CLI
-
Como descrever um fluxo de dados
O exemplo de
describe-stream
a seguir retorna detalhes sobre o fluxo de dados especificado.aws kinesis describe-stream \ --stream-name
samplestream
Saída:
{ "StreamDescription": { "Shards": [ { "ShardId": "shardId-000000000000", "HashKeyRange": { "StartingHashKey": "0", "EndingHashKey": "113427455640312821154458202477256070484" }, "SequenceNumberRange": { "StartingSequenceNumber": "49600871682957036442365024926191073437251060580128653314" } }, { "ShardId": "shardId-000000000001", "HashKeyRange": { "StartingHashKey": "113427455640312821154458202477256070485", "EndingHashKey": "226854911280625642308916404954512140969" }, "SequenceNumberRange": { "StartingSequenceNumber": "49600871682979337187563555549332609155523708941634633746" } }, { "ShardId": "shardId-000000000002", "HashKeyRange": { "StartingHashKey": "226854911280625642308916404954512140970", "EndingHashKey": "340282366920938463463374607431768211455" }, "SequenceNumberRange": { "StartingSequenceNumber": "49600871683001637932762086172474144873796357303140614178" } } ], "StreamARN": "arn:aws:kinesis:us-west-2:123456789012:stream/samplestream", "StreamName": "samplestream", "StreamStatus": "ACTIVE", "RetentionPeriodHours": 24, "EnhancedMonitoring": [ { "ShardLevelMetrics": [] } ], "EncryptionType": "NONE", "KeyId": null, "StreamCreationTimestamp": 1572297168.0 } }
Para obter mais informações, consulte Criar e gerenciar fluxos no Guia do desenvolvedor do Amazon Kinesis Data Streams.
-
Para obter detalhes da API, consulte DescribeStream
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar disable-enhanced-monitoring
.
- AWS CLI
-
Para desativar o monitoramento aprimorado para métricas em nível de fragmentos
O exemplo
disable-enhanced-monitoring
a seguir desativa o monitoramento aprimorado do fluxo de dados do Kinesis para métricas em nível de fragmentos.aws kinesis disable-enhanced-monitoring \ --stream-name
samplestream
--shard-level-metricsALL
Saída:
{ "StreamName": "samplestream", "CurrentShardLevelMetrics": [ "IncomingBytes", "OutgoingRecords", "IteratorAgeMilliseconds", "IncomingRecords", "ReadProvisionedThroughputExceeded", "WriteProvisionedThroughputExceeded", "OutgoingBytes" ], "DesiredShardLevelMetrics": [] }
Para obter mais informações, consulte Monitorar fluxos no Amazon Kinesis Data Streams no Guia do desenvolvedor do Amazon Kinesis Data Streams.
-
Para ver detalhes da API, consulte DisableEnhancedMonitoring
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar enable-enhanced-monitoring
.
- AWS CLI
-
Como ativar o monitoramento aprimorado para métricas em nível de fragmentos
O exemplo
enable-enhanced-monitoring
a seguir ativa o monitoramento aprimorado do fluxo de dados do Kinesis para métricas em nível de fragmentos.aws kinesis enable-enhanced-monitoring \ --stream-name
samplestream
\ --shard-level-metricsALL
Saída:
{ "StreamName": "samplestream", "CurrentShardLevelMetrics": [], "DesiredShardLevelMetrics": [ "IncomingBytes", "OutgoingRecords", "IteratorAgeMilliseconds", "IncomingRecords", "ReadProvisionedThroughputExceeded", "WriteProvisionedThroughputExceeded", "OutgoingBytes" ] }
Para obter mais informações, consulte Monitorar fluxos no Amazon Kinesis Data Streams no Guia do desenvolvedor do Amazon Kinesis Data Streams.
-
Para ver detalhes da API, consulte EnableEnhancedMonitoring
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar get-records
.
- AWS CLI
-
Como obter registros de um fragmento
O exemplo de
get-records
a seguir obtém registros de dados do fragmento de um fluxo de dados do Kinesis usando o iterador de fragmento especificado.aws kinesis get-records \ --shard-iterator
AAAAAAAAAAF7/0mWD7IuHj1yGv/TKuNgx2ukD5xipCY4cy4gU96orWwZwcSXh3K9tAmGYeOZyLZrvzzeOFVf9iN99hUPw/w/b0YWYeehfNvnf1DYt5XpDJghLKr3DzgznkTmMymDP3R+3wRKeuEw6/kdxY2yKJH0veaiekaVc4N2VwK/GvaGP2Hh9Fg7N++q0Adg6fIDQPt4p8RpavDbk+A4sL9SWGE1
Saída:
{ "Records": [], "MillisBehindLatest": 80742000 }
Para obter mais informações, consulte Developing Consumers Using the Kinesis Data Streams API with the AWS SDK for Java no Guia do desenvolvedor do Amazon Kinesis Data Streams.
-
Para ver detalhes da API, consulte GetRecords
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar get-shard-iterator
.
- AWS CLI
-
Para obter um iterador de fragmentos
O exemplo
get-shard-iterator
a seguir usa o tipo iterador de fragmentoAT_SEQUENCE_NUMBER
e gera um iterador de fragmento para começar a ler os registros de dados exatamente da posição indicada pelo número de sequência especificado.aws kinesis get-shard-iterator \ --stream-name
samplestream
\ --shard-idshardId-000000000001
\ --shard-iterator-typeLATEST
Saída:
{ "ShardIterator": "AAAAAAAAAAFEvJjIYI+3jw/4aqgH9FifJ+n48XWTh/IFIsbILP6o5eDueD39NXNBfpZ10WL5K6ADXk8w+5H+Qhd9cFA9k268CPXCz/kebq1TGYI7Vy+lUkA9BuN3xvATxMBGxRY3zYK05gqgvaIRn94O8SqeEqwhigwZxNWxID3Ej7YYYcxQi8Q/fIrCjGAy/n2r5Z9G864YpWDfN9upNNQAR/iiOWKs" }
Para obter mais informações, consulte Developing Consumers Using the Kinesis Data Streams API with the AWS SDK for Java no Guia do desenvolvedor do Amazon Kinesis Data Streams.
-
Para ver detalhes da API, consulte GetShardIterator
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar increase-stream-retention-period
.
- AWS CLI
-
Como aumentar o período de retenção do fluxo de dados
O exemplo
increase-stream-retention-period
a seguir aumenta o período de retenção (o período em que os registros de dados ficam acessíveis depois de serem adicionados ao fluxo) do fluxo especificado para 168 horas.aws kinesis increase-stream-retention-period \ --stream-name
samplestream
\ --retention-period-hours168
Este comando não produz saída.
Para obter mais informações, consulte Alterar o período de retenção de dados no Guia do desenvolvedor do Amazon Kinesis Data Streams.
-
Para ver detalhes da API, consulte IncreaseStreamRetentionPeriod
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar list-shards
.
- AWS CLI
-
Para listar fragmentos em um fluxo de dados
O exemplo
list-shards
a seguir lista todos os fragmentos no fluxo especificado, começando com o fragmento cujo ID segue imediatamente oexclusive-start-shard-id
especificado porshardId-000000000000
.aws kinesis list-shards \ --stream-name
samplestream
\ --exclusive-start-shard-idshardId-000000000000
Saída:
{ "Shards": [ { "ShardId": "shardId-000000000001", "HashKeyRange": { "StartingHashKey": "113427455640312821154458202477256070485", "EndingHashKey": "226854911280625642308916404954512140969" }, "SequenceNumberRange": { "StartingSequenceNumber": "49600871682979337187563555549332609155523708941634633746" } }, { "ShardId": "shardId-000000000002", "HashKeyRange": { "StartingHashKey": "226854911280625642308916404954512140970", "EndingHashKey": "340282366920938463463374607431768211455" }, "SequenceNumberRange": { "StartingSequenceNumber": "49600871683001637932762086172474144873796357303140614178" } } ] }
Para obter mais informações, consulte Listar fragmentos no Guia do desenvolvedor do Amazon Kinesis Data Streams.
-
Para ver detalhes da API, consulte ListShards
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar list-streams
.
- AWS CLI
-
Para listar fluxos de dados
O exemplo de
list-streams
a seguir lista todos os fluxos de dados ativos na conta e região atuais.aws kinesis list-streams
Saída:
{ "StreamNames": [ "samplestream", "samplestream1" ] }
Para obter mais informações, consulte Listar fluxos no Guia do desenvolvedor do Amazon Kinesis Data Streams.
-
Para obter detalhes da API, consulte ListStreams
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar list-tags-for-stream
.
- AWS CLI
-
Para listar tags para um fluxo de dados
O exemplo
list-tags-for-stream
a seguir lista as tags anexadas ao fluxo de dados especificado.aws kinesis list-tags-for-stream \ --stream-name
samplestream
Saída:
{ "Tags": [ { "Key": "samplekey", "Value": "example" } ], "HasMoreTags": false }
Para obter mais informações, consulte Adicionar tags a fluxos no Guia do desenvolvedor do Amazon Kinesis Data Streams.
-
Para ver detalhes da API, consulte ListTagsForStream
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar merge-shards
.
- AWS CLI
-
Para mesclar dois fragmentos
O exemplo
merge-shards
a seguir mescla dois fragmentos adjacentes com IDs de ShardID-000000000000 e ShardID-000000000001 no fluxo de dados especificado e os combina em um único fragmento.aws kinesis merge-shards \ --stream-name
samplestream
\ --shard-to-mergeshardId-000000000000
\ --adjacent-shard-to-mergeshardId-000000000001
Este comando não produz saída.
Para obter mais informações, consulte Mesclar dois fragmentos no Guia do desenvolvedor do Amazon Kinesis Data Streams.
-
Para ver detalhes da API, consulte MergeShards
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar put-record
.
- AWS CLI
-
Como gravar um registro em um fluxo de dados
O exemplo de
put-record
a seguir grava um único registro de dados no fluxo de dados especificado usando a chave de partição especificada.aws kinesis put-record \ --stream-name
samplestream
\ --datasampledatarecord
\ --partition-keysamplepartitionkey
Saída:
{ "ShardId": "shardId-000000000009", "SequenceNumber": "49600902273357540915989931256901506243878407835297513618", "EncryptionType": "KMS" }
Para obter mais informações, consulte Desenvolver produtores usando a API do Amazon Kinesis Data Streams com o AWS SDK for Java no Guia do desenvolvedor do Amazon Kinesis Data Streams.
-
Para obter detalhes da API, consulte PutRecord
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar put-records
.
- AWS CLI
-
Para gravar vários registros em um fluxo de dados
O exemplo
put-records
a seguir grava um registro de dados usando a chave de partição especificada e outro registro de dados usando uma chave de partição diferente em uma única chamada.aws kinesis put-records \ --stream-name
samplestream
\ --recordsData=blob1,PartitionKey=partitionkey1
Data=blob2,PartitionKey=partitionkey2
Saída:
{ "FailedRecordCount": 0, "Records": [ { "SequenceNumber": "49600883331171471519674795588238531498465399900093808706", "ShardId": "shardId-000000000004" }, { "SequenceNumber": "49600902273357540915989931256902715169698037101720764562", "ShardId": "shardId-000000000009" } ], "EncryptionType": "KMS" }
Para obter mais informações, consulte Desenvolver produtores usando a API do Amazon Kinesis Data Streams com o AWS SDK for Java no Guia do desenvolvedor do Amazon Kinesis Data Streams.
-
Para ver detalhes da API, consulte PutRecords
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar register-stream-consumer
.
- AWS CLI
-
Para registrar um consumidor de fluxo de dados
O exemplo
register-stream-consumer
a seguir registra um consumidor chamadoKinesisConsumerApplication
com o fluxo de dados especificado.aws kinesis register-stream-consumer \ --stream-arn
arn:aws:kinesis:us-west-2:012345678912:stream/samplestream
\ --consumer-nameKinesisConsumerApplication
Saída:
{ "Consumer": { "ConsumerName": "KinesisConsumerApplication", "ConsumerARN": "arn:aws:kinesis:us-west-2: 123456789012:stream/samplestream/consumer/KinesisConsumerApplication:1572383852", "ConsumerStatus": "CREATING", "ConsumerCreationTimestamp": 1572383852.0 } }
Para obter mais informações, consulte Desenvolver consumidores com Fan-Out aprimorado usando a API Kinesis Data Streams no Guia do desenvolvedor do Amazon Kinesis Data Streams.
-
Para ver detalhes da API, consulte RegisterStreamConsumer
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar remove-tags-from-stream
.
- AWS CLI
-
Para remover tags de um fluxo de dados
O exemplo
remove-tags-from-stream
a seguir remove a tag com uma chave especificada do fluxo de dados especificado.aws kinesis remove-tags-from-stream \ --stream-name
samplestream
\ --tag-keyssamplekey
Este comando não produz saída.
Para obter mais informações, consulte Adicionar tags a fluxos no Guia do desenvolvedor do Amazon Kinesis Data Streams.
-
Para ver detalhes da API, consulte RemoveTagsFromStream
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar split-shard
.
- AWS CLI
-
Como dividir fragmentos
O exemplo
split-shard
a seguir divide o fragmento especificado em dois novos fragmentos usando uma nova chave de hash inicial de 10.aws kinesis split-shard \ --stream-name
samplestream
\ --shard-to-splitshardId-000000000000
\ --new-starting-hash-key10
Este comando não produz saída.
Para obter mais informações, consulte Dividir um fragmento no Guia do desenvolvedor do Amazon Kinesis Data Streams.
-
Para ver detalhes da API, consulte SplitShard
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar start-stream-encryption
.
- AWS CLI
-
Para habilitar a criptografia de fluxo de dados
O exemplo
start-stream-encryption
a seguir ativa a criptografia do lado do servidor para o fluxo especificado, usando a chave do AWS KMS especificada.aws kinesis start-stream-encryption \ --encryption-type
KMS
\ --key-idarn:aws:kms:us-west-2:012345678912:key/a3c4a7cd-728b-45dd-b334-4d3eb496e452
\ --stream-namesamplestream
Este comando não produz saída.
Para obter mais informações, consulte Proteção de dados no Amazon Kinesis Data Streams no Guia do desenvolvedor do Amazon Kinesis Data Streams.
-
Para obter detalhes a API, consulte StartStreamEncryption
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar stop-stream-encryption
.
- AWS CLI
-
Para desativar a criptografia do fluxo de dados
O exemplo
stop-stream-encryption
a seguir desativa a criptografia do lado do servidor para o fluxo especificado, usando a chave do AWS KMS especificada.aws kinesis start-stream-encryption \ --encryption-type
KMS
\ --key-idarn:aws:kms:us-west-2:012345678912:key/a3c4a7cd-728b-45dd-b334-4d3eb496e452
\ --stream-namesamplestream
Este comando não produz saída.
Para obter mais informações, consulte Proteção de dados no Amazon Kinesis Data Streams no Guia do desenvolvedor do Amazon Kinesis Data Streams.
-
Para ver detalhes da API, consulte StopStreamEncryption
na Referência de comandos da AWS CLI.
-
O código de exemplo a seguir mostra como usar update-shard-count
.
- AWS CLI
-
Para atualizar a contagem de fragmentos em um fluxo de dados
O exemplo
update-shard-count
a seguir atualiza a contagem de fragmentos do fluxo de dados especificado para 6. Este exemplo usa escala uniforme, que cria fragmentos do mesmo tamanho.aws kinesis update-shard-count \ --stream-name
samplestream
\ --scaling-typeUNIFORM_SCALING
\ --target-shard-count6
Saída:
{ "StreamName": "samplestream", "CurrentShardCount": 3, "TargetShardCount": 6 }
Para obter mais informações, consulte Refragmentar um fluxo no Guia do desenvolvedor do Amazon Kinesis Data Streams.
-
Para ver detalhes da API, consulte UpdateShardCount
na Referência de comandos da AWS CLI.
-