Entrega de logs
nota
O log lento é compatível com o Valkey 7.x e versões posteriores, e clusters e grupos de replicação do Redis OSS que usam o mecanismo versão 6.0 em diante.
O log do mecanismo é compatível com clusters e grupos de replicação do Valkey 7.x e superiores e do Redis OSS que usam o mecanismo versão 6.2 em diante.
A entrega de logs permite que você transmita SLOWLOG
Amazon Data Firehose
Amazon CloudWatch Logs
Você habilita e configura a entrega de log ao criar ou modificar um cluster usando APIs do ElastiCache. Cada entrada de log será entregue ao destino especificado em um dos dois formatos: JSON ou TEXT.
Um número fixo de entradas de log lento são recuperados periodicamente do mecanismo. Dependendo do valor especificado para o parâmetro do mecanismo slowlog-max-len, é possível que entradas de log lentas adicionais não sejam entregues no destino.
Você pode optar por alterar as configurações de entrega ou desabilitar a entrega de log a qualquer momento usando o console da AWS ou uma das APIs de modificação, modify-cache-cluster ou modify-replication-group.
Você deve definir o parâmetro apply-immediately para todas as modificações de entrega de log.
nota
As cobranças do Amazon CloudWatch Logs se aplicam quando a entrega de logs é habilitada, mesmo quando os logs são entregues diretamente ao Amazon Data Firehose. Para obter mais informações, consulte a seção Logs vendidos em Definição de preços do Amazon CloudWatch
Conteúdo de uma entrada de log lento
O log lento contém as seguintes informações:
CacheClusterId: o ID do cluster
CacheNodeId: o ID do nó de cache
Id: um identificador progressivo exclusivo para cada entrada de log lento
Timestamp: O timestamp do Unix no qual o comando registrado foi processado
Duration (Duração): a quantidade de tempo necessário para sua execução, em microssegundos
Command (Comando: o comando usado pelo cliente. Por exemplo,
set foo barondefooé a chave ebaré o valor. O ElastiCache substitui o nome e valor reais da chave por(2 more arguments)para evitar expor dados confidenciais.ClientAddress: endereço IP do cliente e porta
ClientName: nome do cliente, se definido através do comando
CLIENT SETNAME
Conteúdo de uma entrada de log do mecanismo
O log do mecanismo do ElastiCache contém as seguintes informações:
CacheClusterId: o ID do cluster
CacheNodeId: o ID do nó de cache
Log Level (Nível de log): o LogLevel pode ser um dos seguintes:
VERBOSE("-"),NOTICE("*"),WARNING("#").Time (Hora) - O horário UTC da mensagem registrada. A hora está no seguinte formato:
"DD MMM YYYY hh:mm:ss.ms UTC"Role (Função) - Função do nó de onde o log é emitido. Pode ser um dos seguintes: “M” para primário, “S” para réplica, “C” para um processo secundário de gravação que está trabalhando em RDB/AOF ou “X” para sentinela.
Mensagem: mensagem de log do mecanismo.
Permissões para configurar os logs
Você precisa incluir as seguintes permissões do IAM em sua política de usuário/função do IAM:
logs:CreateLogDeliverylogs:UpdateLogDeliverylogs:DeleteLogDeliverylogs:GetLogDeliverylogs:ListLogDeliveries
Para obter mais informações, consulte Visão geral do gerenciamento de acesso: permissões e políticas.
Especificações de tipo de log e formato de log
Log lento
O log lento suporta JSON e TEXT
O exemplo a seguir mostra um exemplo de 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##" }
O exemplo a seguir mostra um exemplo de formato TEXT.
logslowxxxxmsxj,0001,1605631822,30,GET ... (1 more arguments),192.168.12.104:55452,logslowxxxxmsxj##
Log do mecanismo
O log do mecanismo é compatível com JSON e TEXT
O exemplo a seguir mostra um exemplo de formato JSON.
{ "CacheClusterId": "xxxxxxxxxzy-engine-log-test", "CacheNodeId": "0001", "LogLevel": "VERBOSE", "Role": "M", "Time": "12 Nov 2020 01:28:57.994 UTC", "Message": "Replica is waiting for next BGSAVE before synchronizing with the primary. Check back later" }
O exemplo a seguir mostra um exemplo de formato TEXT.
xxxxxxxxxxxzy-engine-log-test/0001:M 29 Oct 2020 20:12:20.499 UTC * A slow-running Lua script detected that is still in execution after 1000 microseconds.