2015-01-21 8 views

risposta

12

L'ultima AWS CLI ha una CLI Logs CloudWatch, che permette di scaricare i registri come JSON, file di testo o qualsiasi altra uscita supportata da AWS CLI.

Ad esempio, per ottenere i primi 10.000 voci di registro dal flusso a nel gruppo A un file di testo, eseguire:

aws logs get-log-events --log-group-name A --log-stream-name a \ 
    --output text > a.log 

Il comando è attualmente limitata a un massimo di 10.000 record per richiesta, e se avete più che avete bisogno di implementare il proprio meccanismo di stepping della pagina usando il parametro --next-token. Mi aspetto che in futuro la CLI consentirà anche il dump completo in un unico comando.

2

Apparentemente non c'è un modo originale di accedere alla Console AWS in cui è possibile scaricare CloudWatchLogs. Forse puoi scrivere uno script per eseguire il recupero di CloudWatchLogs utilizzando l'SDK/API.

La cosa buona di CloudWatchLogs è che è possibile conservare i registri per un tempo infinito (Never Expire); a differenza del Cloud Watch che mantiene solo i log per soli 14 giorni. Ciò significa che puoi eseguire lo script in frequenza mensile/trimestrale anziché su richiesta.

Maggiori informazioni sulle API CloudWatchLogs, http://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/Welcome.html http://awsdocs.s3.amazonaws.com/cloudwatchlogs/latest/cwl-api.pdf

12

v'è anche un progetto di pitone chiamato awslogs, permettendo di ottenere i registri: https://github.com/jorgebastida/awslogs

ci sono cose come:

gruppi elenco di registro:

$ awslogs groups 

lista streams per un dato gruppo di registro :

$ awslogs streams /var/log/syslog 

ottenere il lo g record da tutti i flussi:

$ awslogs get /var/log/syslog 

ottenere il record di log da specifico flusso:

$ awslogs get /var/log/syslog stream_A 

e molto altro (filtraggio per il periodo di tempo, a guardare i flussi di log ...

credo, questo strumento potrebbe aiutarti a fare ciò che vuoi.

0

Sembra che AWS abbia aggiunto la possibilità di esportare un intero gruppo di registri su S3.

Export to S3 menu

Export to S3 Form

Avrai bisogno di autorizzazioni di installazione sul secchio S3 per consentire CloudWatch a scrivere al secchio aggiungendo quanto segue alla vostra politica secchio, sostituendo la regione con la regione e la nome del secchio con il nome del secchio.

{ 
     "Effect": "Allow", 
     "Principal": { 
      "Service": "logs.us-east-1.amazonaws.com" 
     }, 
     "Action": "s3:GetBucketAcl", 
     "Resource": "arn:aws:s3:::tsf-log-data" 
    }, 
    { 
     "Effect": "Allow", 
     "Principal": { 
      "Service": "logs.us-east-1.amazonaws.com" 
     }, 
     "Action": "s3:PutObject", 
     "Resource": "arn:aws:s3:::tsf-log-data/*", 
     "Condition": { 
      "StringEquals": { 
       "s3:x-amz-acl": "bucket-owner-full-control" 
      } 
     } 
    } 

dettagli possono essere trovati nel Step 2 of this AWS doc

Problemi correlati