Como faço para ativar o log lento do Redis em um cluster de cache do ElastiCache for Redis?
Quero ativar o log lento do Redis no cluster de cache do ElastiCache for Redis. Como posso fazer isso?
Breve descrição
O recurso de log lento do Redis registra consultas que excedem um período de tempo especificado. O log lento oferece uma opção para registrar consultas lentas no Amazon CloudWatch ou no Amazon Kinesis Data Firehose. O log lento do Redis é uma boa ferramenta para depurar e rastrear o banco de dados Redis, especialmente se você estiver enfrentando alta latência e/ou alto uso de CPU.
Uma nova entrada é adicionada ao log lento quando um comando excede o tempo de execução definido pelo parâmetro slowlog-log-slower-than. Cada entrada de log é entregue ao destino especificado (CloudWatch ou Kineses) em formato JSON ou texto.
Veja a seguir exemplos de cada formato:
JSON
{ "CacheClusterId": "logslowxxxxmsxj", "CacheNodeId": "0001", "Id": 296, "Timestamp": 1605631822, "Duration (us)": 0, "Command": "GET ... (1 more arguments)", "ClientAddress": "192.168.12.104:55452", "ClientName": "logslowxxxxmsxj##" }
Texto
logslowxxxxmsxj,0001,1605631822,30,GET ... (1 more arguments),192.168.12.104:55452,logslowxxxxmsxj##
Resolução
Pré-requisitos
O log lento do Redis requer o mecanismo Redis versão 6.0 e superior. Se a versão do mecanismo for anterior à versão 6.0, você poderá recuperar manualmente o log lento usando o comando slowlog get 128. Cada nó tem seu próprio log lento. Portanto, você deve coletar o log de cada nó do cluster.
Ativar o recurso de log lento durante a criação ou modificação do cluster requer permissão para publicação no CloudWatch ou no Kinesis Firehose. Use as seguintes permissões criando uma política de gerenciamento de identidade e acesso e anexando-a ao usuário responsável:
Permissões do Amazon CloudWatch:
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "logs:CreateLogDelivery", "logs:GetLogDelivery", "logs:UpdateLogDelivery", "logs:DeleteLogDelivery", "logs:ListLogDeliveries" ], "Resource": [ "*" ], "Effect": "Allow", "Sid": "ElastiCacheLogging" }, { "Sid": "ElastiCacheLoggingCWL", "Action": [ "logs:PutResourcePolicy", "logs:DescribeResourcePolicies", "logs:DescribeLogGroups" ], "Resource": [ "*" ], "Effect": "Allow" } ] }
Permissões do Amazon Kinesis Data Firehose:
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "logs:CreateLogDelivery", "logs:GetLogDelivery", "logs:UpdateLogDelivery", "logs:DeleteLogDelivery", "logs:ListLogDeliveries" ], "Resource": [ "*" ], "Effect": "Allow", "Sid": "ElastiCacheLogging" }, { "Sid": "ElastiCacheLoggingFHSLR", "Action": [ "iam:CreateServiceLinkedRole" ], "Resource": "*", "Effect": "Allow" }, { "Sid": "ElastiCacheLoggingFH", "Action": [ "firehose:TagDeliveryStream" ], "Resource": "Amazon Kinesis Data Firehose delivery stream ARN", "Effect": "Allow" } ] }
Ativar logs lentos do Redis no cluster do ElastiCache
Depois de atender aos pré-requisitos, você pode ativar o log lento ao criar o cluster ou ao modificar um cluster existente.
Para obter instruções sobre como ativar os logs lentos do Redis no console da AWS, consulte Especificar a entrega de logs usando o console.
Conteúdo do log lento
Depois que destino do log é selecionado, quando uma consulta excede o período de tempo especificado, o evento é registrado no destino do log. Cada evento registrado tem o seguinte conteúdo:
- CacheClusterId: o ID do cluster de cache.
- CacheNodeId: o ID do nó de cache.
- Id: um identificador progressivo exclusivo para cada entrada do log lento.
- Timestamp: o timestamp Unix em que o comando registrado foi processado.
- Duração: a quantidade de tempo necessária para a execução, em microssegundos.
- Comando: o comando usado pelo cliente. Por exemplo, set foo bar, em que foo é a chave e bar é o valor. O ElastiCache for Redis substitui o nome e o valor da chave real por (mais 2 argumentos) para evitar a exposição de dados confidenciais.
- ClientAddress: endereço IP e porta do cliente.
- ClientName: nome do cliente se definido pelo comando CLIENT SETNAME.

Conteúdo relevante
- AWS OFICIALAtualizada há um ano
- AWS OFICIALAtualizada há 3 meses
- AWS OFICIALAtualizada há um ano