View a markdown version of this page

Monitore o serviço Amazon Kinesis Data Streams com a Amazon CloudWatch - Amazon Kinesis Data Streams

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Monitore o serviço Amazon Kinesis Data Streams com a Amazon CloudWatch

O Amazon Kinesis Data Streams e o Amazon CloudWatch são integrados para que você possa coletar, visualizar e analisar CloudWatch métricas para seus streams de dados do Kinesis. Por exemplo, para rastrear o uso de fragmentos, é possível monitorar as IncomingBytes e as métricas de OutgoingBytes e compará-las com o número de fragmentos no fluxo.

As métricas de stream e as métricas em nível de fragmento que você configura são automaticamente coletadas e enviadas para CloudWatch cada minuto. As métricas são arquivadas por duas semanas. Depois desse período, os dados serão descartados.

A tabela a seguir descreve o monitoramento básico no nível do fluxo e o monitoramento avançado no nível do fragmento em fluxos de dados do Kinesis.

Tipo Description

Básico (nível de fluxo)

Stream-level os dados são enviados automaticamente a cada minuto, sem nenhum custo.

Avançado (nível de fragmento)

Shard-level os dados são enviados a cada minuto por um custo adicional. Para obter esse nível de dados, você precisa habilitá-lo especificamente para o stream usando a operação EnableEnhancedMonitoring.

Para obter informações sobre preços, consulte a página de CloudWatch produtos da Amazon.

Métricas e dimensões do Amazon Kinesis Data Streams

O Kinesis Data Streams envia métricas para dois níveis: o CloudWatch nível do stream e, opcionalmente, o nível do fragmento. Stream-level as métricas são para os casos de uso de monitoramento mais comuns em condições normais. Shard-level as métricas são para tarefas de monitoramento específicas, geralmente relacionadas à solução de problemas, e são habilitadas usando a EnableEnhancedMonitoring operação.

Para obter uma explicação das estatísticas coletadas a partir das CloudWatch métricas, consulte CloudWatch Estatísticas no Guia CloudWatch do usuário da Amazon.

Métricas no nível do fluxo básicas

O namespace AWS/Kinesis inclui métricas de nível do fluxo a seguir.

O Kinesis Data Streams envia essas métricas em nível de stream para cada minuto. CloudWatch Essas métricas estão sempre disponíveis.

Métrica Description
GetRecords.Bytes

O número de bytes recuperados do fluxo do Kinesis, medido no período especificado. As estatísticas mínima, máxima e média representam os bytes em uma única operação GetRecords para o fluxo no período especificado.

Shard-level nome da métrica: OutgoingBytes

Dimensões: StreamName

Estatísticas válidas: mínima, máxima, média, soma, amostras

Unidade: bytes

GetRecords.IteratorAge

Essa métrica não é mais usada. Use GetRecords.IteratorAgeMilliseconds.

GetRecords.IteratorAgeMilliseconds

A idade do último registro em todas as chamadas GetRecords feitas com relação a um fluxo do Kinesis, medida no período especificado. Idade é a diferença entre a hora atual e quando o último registro da chamada GetRecords foi gravado no fluxo. As estatísticas de mínimo e máximo podem ser usadas para acompanhar o progresso das aplicações de consumo do Kinesis. Um valor zero indica que os registros lidos estão em completa sincronização com o fluxo.

Shard-level nome da métrica: IteratorAgeMilliseconds

Dimensões: StreamName

Estatísticas válidas: mínima, máxima, média, amostras

Unidade: milissegundos

GetRecords.Latency

O tempo gasto por operação GetRecords, medido ao longo do período de tempo especificado.

Dimensões: StreamName

Estatísticas: mínimo, máximo, média

Unidade: milissegundos

GetRecords.Records

O número de registros recuperados do fragmento, medido ao longo do período de tempo especificado. As estatísticas mínima, máxima e média representam os registros em uma única operação GetRecords para o fluxo no período especificado.

Shard-level nome da métrica: OutgoingRecords

Dimensões: StreamName

Estatísticas válidas: mínima, máxima, média, soma, amostras

Unidades: contagem

GetRecords.Success

O número de operações GetRecords bem-sucedidas por fluxo, medido ao longo do período de tempo especificado.

Dimensões: StreamName

Estatísticas válidas: média, soma, amostras

Unidades: contagem

IncomingBytes

O número de bytes colocados com êxito no fluxo do Kinesis no período especificado. Essa métrica inclui bytes das operações PutRecord e PutRecords. As estatísticas mínima, máxima e média representam os bytes em uma única operação put para o fluxo no período especificado.

Shard-level nome da métrica: IncomingBytes

Dimensões: StreamName

Estatísticas válidas: mínima, máxima, média, soma, amostras

Unidade: bytes

IncomingRecords

O número de registros colocados com êxito no fluxo do Kinesis no período especificado. Essa métrica inclui registros das operações PutRecord e PutRecords. As estatísticas mínima, máxima e média representam os registros em uma única operação put para o fluxo no período especificado.

Shard-level nome da métrica: IncomingRecords

Dimensões: StreamName

Estatísticas válidas: mínima, máxima, média, soma, amostras

Unidades: contagem

PutRecord.Bytes

O número de bytes colocados no fluxo do Kinesis usando a operação PutRecord no período especificado.

Dimensões: StreamName

Estatísticas válidas: mínima, máxima, média, soma, amostras

Unidade: bytes

PutRecord.Latency

O tempo gasto por operação PutRecord, medido ao longo do período de tempo especificado.

Dimensões: StreamName

Estatísticas: mínimo, máximo, média

Unidade: milissegundos

PutRecord.Success

O número de operações PutRecord bem-sucedidas por fluxo do Kinesis, medido no período especificado. A média reflete a porcentagem de gravações bem-sucedidas em um fluxo.

Dimensões: StreamName

Estatísticas válidas: média, soma, amostras

Unidades: contagem

PutRecords.Bytes

O número de bytes colocados no fluxo do Kinesis usando a operação PutRecords no período especificado.

Dimensões: StreamName

Estatísticas válidas: mínima, máxima, média, soma, amostras

Unidade: bytes

PutRecords.Latency

O tempo gasto por operação PutRecords, medido ao longo do período de tempo especificado.

Dimensões: StreamName

Estatísticas: mínimo, máximo, média

Unidade: milissegundos

PutRecords.Records

Essa métrica foi substituída. Use PutRecords.SuccessfulRecords.

Dimensões: StreamName

Estatísticas válidas: mínima, máxima, média, soma, amostras

Unidades: contagem

PutRecords.Success

O número de operações PutRecords com pelo menos um registro bem-sucedido por fluxo do Kinesis, medido no período especificado.

Dimensões: StreamName

Estatísticas válidas: média, soma, amostras

Unidades: contagem

PutRecords.TotalRecords

O número total de registros enviados em uma operação PutRecords por fluxo de dados do Kinesis, medido no período especificado.

Dimensões: StreamName

Estatísticas válidas: mínima, máxima, média, soma, amostras

Unidades: contagem

PutRecords.SuccessfulRecords

O número de registros bem-sucedidos em uma operação PutRecords por fluxo de dados do Kinesis, medido no período especificado.

Dimensões: StreamName

Estatísticas válidas: mínima, máxima, média, soma, amostras

Unidades: contagem

PutRecords.FailedRecords

O número de registros rejeitados devido a falhas internas em uma operação PutRecords por fluxo de dados do Kinesis, medido no período especificado. Falhas internas ocasionais são esperadas e a operação deve ser repetida.

Dimensões: StreamName

Estatísticas válidas: mínima, máxima, média, soma, amostras

Unidades: contagem

PutRecords.ThrottledRecords

O número de registros rejeitados devido ao controle de utilização em uma operação PutRecords por fluxo de dados do Kinesis, medido no período especificado.

Dimensões: StreamName

Estatísticas válidas: mínima, máxima, média, soma, amostras

Unidades: contagem

ReadProvisionedThroughputExceeded

O número de chamadas GetRecords limitadas para o fluxo ao longo do período especificado. A estatística mais usada para essa métrica é Média.

Quando a estatística mínima tem um valor de 1, todos os registros foram limitados ao fluxo durante o período especificado.

Quando a estatística máxima tem um valor de 0 (zero), nenhum registro foi limitado ao fluxo durante o período especificado.

Shard-level nome da métrica: ReadProvisionedThroughputExceeded

Dimensões: StreamName

Estatísticas válidas: mínima, máxima, média, soma, amostras

Unidades: contagem

SubscribeToShard.RateExceeded

Essa métrica é emitida quando uma tentativa de nova assinatura apresenta falha porque já existe uma assinatura ativa com o mesmo consumidor ou se o número de chamadas por segundo permitido para essa operação for excedido.

Dimensões: StreamName, ConsumerName
SubscribeToShard.Success

Essa métrica registra se a SubscribeToShard assinatura foi estabelecida com sucesso. A assinatura se mantém ativa por no máximo 5 minutos. Portanto, essa métrica é emitida pelo menos uma vez a cada 5 minutos.

Dimensões: StreamName, ConsumerName

SubscribeToShardEvent.Bytes

O número de bytes recebidos do fragmento, medidos no período especificado. As estatísticas mínima, máxima e média representam os bytes publicados em um único evento no período especificado.

Shard-level nome da métrica: OutgoingBytes

Dimensões: StreamName, ConsumerName

Estatísticas válidas: mínima, máxima, média, soma, amostras

Unidade: bytes

SubscribeToShardEvent.MillisBehindLatest

O número de milissegundos em que os registros de leitura estão na extremidade do fluxo de dados, indicando o quão atrasado o consumidor está em relação ao horário atual.

Dimensões: StreamName, ConsumerName

Estatísticas válidas: mínima, máxima, média, amostras

Unidade: milissegundos

SubscribeToShardEvent.Records

O número de registros recebidos do fragmento, medidos no período especificado. As estatísticas mínima, máxima e média representam os registros em um único evento no período especificado.

Shard-level nome da métrica: OutgoingRecords

Dimensões: StreamName, ConsumerName

Estatísticas válidas: mínima, máxima, média, soma, amostras

Unidades: contagem

SubscribeToShardEvent.Success Essa métrica é emitida sempre que um evento é publicado com êxito. Ela será emitida somente quando houver uma assinatura ativa.

Dimensões: StreamName, ConsumerName

Estatísticas válidas: mínima, máxima, média, soma, amostras

Unidades: contagem

WriteProvisionedThroughputExceeded

O número de registros rejeitados por causa da limitação para o fluxo ao longo do período especificado. Essa métrica inclui a limitação das operações PutRecord e PutRecords. A estatística mais usada para essa métrica é Média.

Quando a estatística mínima tem um valor diferente de zero, nenhum registro é limitado ao fluxo durante o período especificado.

Quando a estatística máxima tem um valor de 0 (zero), nenhum registro foi limitado ao fluxo durante o período especificado.

Shard-level nome da métrica: WriteProvisionedThroughputExceeded

Dimensões: StreamName

Estatísticas válidas: mínima, máxima, média, soma, amostras

Unidades: contagem

Métricas do nível de fragmento aprimoradas

O namespace AWS/Kinesis inclui métricas de nível do fragmento a seguir.

O Kinesis envia as seguintes métricas em nível de fragmento para CloudWatch cada minuto. Cada dimensão métrica cria uma CloudWatch métrica e faz aproximadamente 43.200 chamadas de PutMetricData API por mês. Essas métricas não são permitidas por padrão. Há uma cobrança para as métricas aprimoradas emitidas pelo Kinesis. Para obter mais informações, consulte os CloudWatch preços da Amazon sob o título Amazon CloudWatch Custom Metrics. As cobranças são indicadas por fragmento pela métrica por mês.

Métrica Description
IncomingBytes

O número de bytes colocados com sucesso no fragmento ao longo do período especificado. Essa métrica inclui bytes das operações PutRecord e PutRecords. As estatísticas mínima, máxima e média representam os bytes em uma única operação put para o fragmento no período especificado.

Stream-level nome da métrica: IncomingBytes

Dimensões: StreamName, ShardId

Estatísticas válidas: mínima, máxima, média, soma, amostras

Unidade: bytes

IncomingRecords

O número de registros colocados com sucesso no fragmento ao longo do período especificado. Essa métrica inclui registros das operações PutRecord e PutRecords. As estatísticas mínima, máxima e média representam os registros em uma única operação put para o fragmento no período especificado.

Stream-level nome da métrica: IncomingRecords

Dimensões: StreamName, ShardId

Estatísticas válidas: mínima, máxima, média, soma, amostras

Unidades: contagem

IteratorAgeMilliseconds

A idade do último registro em todas as chamadas GetRecords feitas com relação a um fragmento, medida ao longo do período de tempo especificado. Idade é a diferença entre a hora atual e quando o último registro da chamada GetRecords foi gravado no fluxo. As estatísticas de mínimo e máximo podem ser usadas para acompanhar o progresso das aplicações de consumo do Kinesis. Um valor de 0 (zero) indica que os registros lidos estão em completa sincronização com o fluxo.

Stream-level nome da métrica: GetRecords.IteratorAgeMilliseconds

Dimensões: StreamName, ShardId

Estatísticas válidas: mínima, máxima, média, amostras

Unidade: milissegundos

OutgoingBytes

O número de bytes recuperados do fragmento, medido ao longo do período de tempo especificado. As estatísticas mínima, máxima e média representam os bytes retornados em uma única operação GetRecords ou publicados em um único evento SubscribeToShard para o fragmento no período especificado.

Stream-level nome da métrica: GetRecords.Bytes

Dimensões: StreamName, ShardId

Estatísticas válidas: mínima, máxima, média, soma, amostras

Unidade: bytes

OutgoingRecords

O número de registros recuperados do fragmento, medido ao longo do período de tempo especificado. As estatísticas mínima, máxima e média representam os registros retornados em uma única operação GetRecords ou publicados em um único evento SubscribeToShard para o fragmento no período especificado.

Stream-level nome da métrica: GetRecords.Records

Dimensões: StreamName, ShardId

Estatísticas válidas: mínima, máxima, média, soma, amostras

Unidades: contagem

ReadProvisionedThroughputExceeded

O número de chamadas GetRecords limitadas para o fragmento ao longo do período especificado. Esta contagem de exceções abrange todas as dimensões dos seguintes limites: 5 leituras por fragmento por segundo ou 2 MB por segundo por fragmento. A estatística mais usada para essa métrica é Média.

Quando a estatística mínima tem um valor de 1, todos os registros foram limitados ao fragmento durante o período especificado.

Quando a estatística máxima tem um valor de 0 (zero), nenhum registro foi limitado ao fragmento durante o período especificado.

Stream-level nome da métrica: ReadProvisionedThroughputExceeded

Dimensões: StreamName, ShardId

Estatísticas válidas: mínima, máxima, média, soma, amostras

Unidades: contagem

WriteProvisionedThroughputExceeded

O número de registros rejeitados por causa da limitação para o fragmento ao longo do período especificado. Esta métrica inclui limitação das operações PutRecord e PutRecords e abrange todas as dimensões os seguintes limites: 1.000 registros por segundo por fragmento ou 1 MB por segundo por fragmento. A estatística mais usada para essa métrica é Média.

Quando a estatística mínima tem um valor diferente de zero, nenhum registro é limitado ao fragmento durante o período especificado.

Quando a estatística máxima tem um valor de 0 (zero), nenhum registro foi limitado ao fragmento durante o período especificado.

Stream-level nome da métrica: WriteProvisionedThroughputExceeded

Dimensões: StreamName, ShardId

Estatísticas válidas: mínima, máxima, média, soma, amostras

Unidades: contagem

Dimensões de métricas do Amazon Kinesis Data Streams

Dimensão

Description

StreamName

O nome do fluxo do Kinesis. Todas as estatísticas disponíveis são filtradas por StreamName.

Métricas recomendadas do Amazon Kinesis Data Streams

Várias métricas do Amazon Kinesis Data Streams podem ser particularmente interessantes para os clientes do Kinesis Data Streams. A lista a seguir oferece métricas recomendadas e suas utilizações.

Métrica Observações sobre o uso

GetRecords.IteratorAgeMilliseconds

Rastreia a posição de leitura em todos os fragmentos e consumidores no fluxo. Se a idade de um iterador passa de 50% do período de retenção (por padrão 24 horas, configurável até 7 dias), há risco de perda de dados devido à expiração de registro. Recomendamos que você use CloudWatch alarmes na estatística Máxima para alertá-lo antes que essa perda seja um risco. Para ver um exemplo de cenário que usa essa métrica, consulte Processamento de registros de consumidores ficando atrasados.

ReadProvisionedThroughputExceeded

Quando o processamento do registro do lado do consumidor está ficando para trás, às vezes é difícil saber onde está o gargalo. Use essa métrica para determinar se as leituras estão sendo limitadas por terem ultrapassado os limites de throughput de leitura. A estatística mais usada para essa métrica é Média.

WriteProvisionedThroughputExceeded Ela tem a mesma finalidade da métrica ReadProvisionedThroughputExceeded, mas para o lado do produtor (put) do fluxo. A estatística mais usada para essa métrica é Média.
PutRecord.Success, PutRecords.Success Recomendamos usar CloudWatch alarmes na estatística Média para indicar quando os registros estão falhando no stream. Escolha um ou ambos os tipos put, dependendo do que o produtor usa. Se estiver usando a Amazon Kinesis Producer Library (KPL), use PutRecords.Success.
GetRecords.Success Recomendamos usar CloudWatch alarmes na estatística Média para indicar quando os registros estão falhando no stream.

Acesse CloudWatch as métricas da Amazon para Kinesis Data Streams

Você pode monitorar as métricas do Kinesis Data Streams usando o CloudWatch console, a linha de comando ou a CloudWatch API. Os procedimentos a seguir mostram como acessar as métricas usando os seguintes métodos:

Para acessar métricas usando o CloudWatch console
  1. Abra o CloudWatch console em https://console.aws.amazon.com/cloudwatch/.

  2. Na barra de navegação, escolha uma Região.

  3. No painel de navegação, selecione Métricas.

  4. No painel CloudWatch Métricas por categoria, escolha Kinesis Metrics.

  5. Clique na linha relevante para visualizar as estatísticas do MetricName StreamName e.

    Observação: a maioria dos nomes de estatísticas do console corresponde aos nomes de CloudWatch métricas correspondentes listados anteriormente, exceto para taxa de transferência de leitura e taxa de transferência de gravação. Essas estatísticas são calculadas em intervalos de 5 minutos: a taxa de transferência de gravação monitora a IncomingBytes CloudWatch métrica e a taxa de transferência de leitura monitora. GetRecords.Bytes

  6. (Opcional) No painel gráfico, selecione uma estatística e um período de tempo e, em seguida, crie um CloudWatch alarme usando essas configurações.

Para acessar métricas usando o AWS CLI

Use os comandos list-metrics e get-metric-statistics.

Para acessar métricas usando a CloudWatch CLI

Use os comandos mon-list-metrics e mon-get-stats.

Para acessar métricas usando a CloudWatch API

Use as operações ListMetrics e GetMetricStatistics.