Salta al contenuto

Come posso utilizzare CloudWatch Logs Insights per interrogare i miei log di flusso VPC?

3 minuti di lettura
0

Desidero utilizzare le query di Approfondimenti di Amazon CloudWatch Logs per elaborare i log di flusso di Amazon Virtual Private Cloud (Amazon VPC) che si trovano in un gruppo di log.

Risoluzione

Per una panoramica della sintassi utilizzata, consulta la sintassi delle query linguistiche di CloudWatch Logs Insights.

Utilizza gli esempi di query

Usa la console CloudWatch per eseguire una query di esempio su CloudWatch Logs Insights. Per eseguire una query già eseguita in precedenza, scegli Cronologia. Per esportare i risultati, scegli Esporta risultati, quindi seleziona un formato.

Scenario 1

Disponi di un server web, un server applicativo e un server di database. Ricevi un errore di timeout o HTTP 503 e desideri determinare la causa dell'errore.

Esegui una query con le seguenti variabili di esempio:

  • **Impostare ** Action su ** REJECT ** in modo che la query restituisca solo le connessioni rifiutate.
  • Includi solo le reti interne nella query.
  • L'elenco di indirizzi IP del server mostra le connessioni in entrata e in uscita (srcAddr e DSTAddr).
  • Imposta il ** limite ** su ** 5 ** in modo che la query mostri solo le prime cinque voci.
  • L'indirizzo IP del server web è 10.0.0.4.
  • L'indirizzo IP del server delle app è 10.0.0.5.
  • L'indirizzo IP del server di database è 10.0.0.6.

Query di esempio:

filter(   action="REJECT" and
   dstAddr like /^(10\.|192\.168\.)/ and
   srcAddr like /^(10\.|192\.168\.)/ and
   (srcAddr = "10.0.0.4" or dstAddr = "10.0.0.4" or srcAddr = "10.0.0.5" or dstAddr = "10.0.0.5" or srcAddr = "10.0.0.6" or dstAddr = "10.0.0.6")
)
| stats count(*) as records by srcAddr,dstAddr,dstPort,protocol
| sort records desc
| limit 5

Scenario 2

Si verificano timeout intermittenti su un'interfaccia di rete. Per verificare la presenza di rifiuti sull'interfaccia di rete in un periodo di tempo, esegui la seguente query:

fields @timestamp, interfaceId, srcAddr, dstAddr, action| filter (interfaceId = 'eni-05012345abcd' and action = 'REJECT')
| sort @timestamp desc
| limit 5

Scenario 3

Per produrre un report su un'interfaccia di rete specifica, esegui la seguente query:

fields @timestamp, @message | stats count(*) as records by dstPort, srcAddr, dstAddr as Destination
 | filter interfaceId="eni-05012345abcd"
 | filter dstPort="80" or dstPort="443" or dstPort="22" or dstPort="25"
 | sort HitCount desc
 | limit 10

La query precedente verifica la quantità di traffico inviato a porte diverse.

Scenario 4

Per elencare gli indirizzi IP che tentano di connettersi a un indirizzo IP specifico, esegui la seguente query:

fields @timestamp, srcAddr, dstAddr | sort @timestamp desc
 | limit 5
 | filter srcAddr like "172.31."

Per elencare gli indirizzi IP che tentano di connettersi a un CIDR specifico, esegui la seguente query:

fields @timestamp, srcAddr, dstAddr | sort @timestamp desc
 | limit 5
 | filter isIpv4InSubnet(srcAddr,"172.31.0.0/16")

Per altri esempi di query, consulta Queries for Amazon VPC flow logs.

Informazioni correlate

Analisi dei dati di registro con CloudWatch Logs Insights

Supported logs and discovered fields