

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á.

# logs
<a name="gg-cli-logs"></a>

Use o comando `logs` para analisar logs do Greengrass no seu dispositivo principal. 

**Subcomandos**
+ [get](#logs-get)
+ [list-keywords](#logs-list-keywords)
+ [list-log-files](#logs-list-log-files)

## get
<a name="logs-get"></a>

Colete, filtre e visualize os arquivos de log do Greengrass. Esse comando é compatível somente com arquivos de log formatados em JSON. Você pode especificar o [formato de registro em log](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-logging-format) na configuração do núcleo.

**Resumo**  

```
greengrass-cli logs get
    [--log-dir path/to/a/log/folder]
    [--log-file path/to/a/log/file]
    [--follow true | false ]
    [--filter <filter> ]
    [--time-window <start-time>,<end-time> ]
    [--verbose ]
    [--no-color ]
    [--before <value> ]
    [--after <value> ]
    [--syslog ]
    [--max-long-queue-size <value> ]
```

**Argumentos**  
+ `--log-dir`, `-ld`. O caminho para o diretório para verificar os arquivos de log, como **`/greengrass/v2`/logs**. Não use com `--syslog`. Use um argumento separado para cada diretório adicional para especificar. É necessário usar pelo menos um `--log-dir` ou `--log-file`. Você também pode usar os dois argumentos em um único comando. 
+ `--log-file`, `-lf`. Os caminhos para os diretórios de logs que você deseja usar. Use um argumento separado para cada diretório adicional para especificar. É necessário usar pelo menos um `--log-dir` ou `--log-file`. Você também pode usar os dois argumentos em um único comando.
+ `--follow`, `-fol`. Mostre as atualizações de log à medida que elas ocorrem. A CLI do Greengrass continua sendo executada e lendo os logs especificados. Se você especificar uma janela de tempo, a CLI do Greengrass interromperá o monitoramento dos logs após o término de todas as janelas de tempo.
+ `--filter`, `-f`. A palavra-chave, as expressões regulares ou o par de valores-chave a serem usados como filtro. Forneça esse valor como string, expressão regular ou par de chave-valor. Use um argumento separado para cada filtro adicional para especificar. 

  Quando avaliados, vários filtros especificados em um único argumento são separados por operadores OR, e os filtros especificados em argumentos adicionais são combinados com operadores AND. Por exemplo, se seu comando incluir `--filter "installed" --filter "name=alpha,name=beta"`, a CLI do Greengrass filtrará e exibirá mensagens de log que contêm a palavra-chave `installed` e uma chave `name` com os valores `alpha` ou `beta`.
+ `--time-window`, `-t`. A janela de tempo para a qual mostrar as informações do log. Você pode usar carimbos de data/hora exatos e compensações relativas. Você deve fornecer essas informações no formato `<begin-time>,<end-time>`. Se você não especificar a hora de início nem a hora de término, o valor dessa opção será padronizado para a data e a hora atuais do sistema. Use um argumento separado para cada janela de tempo adicional a ser especificada. 

  Use um argumento separado para cada janela de tempo adicional a ser especificada.
  + `yyyy-MM-DD`, por exemplo, `2020-06-30`. O horário padrão é 00:00:00 quando você usa esse formato.

    `yyyyMMDD`, por exemplo, `20200630`. O horário padrão é 00:00:00 quando você usa esse formato.

    `HH:mm:ss`, por exemplo, `15:30:45`. A data é padronizada para a data atual do sistema quando você usa esse formato.

    `HH:mm:ssSSS`, por exemplo, `15:30:45`. A data assume como padrão a data atual do sistema quando você usa esse formato.

    `YYYY-MM-DD'T'HH:mm:ss'Z'`, por exemplo, `2020-06-30T15:30:45Z`.

    `YYYY-MM-DD'T'HH:mm:ss`, por exemplo, `2020-06-30T15:30:45`. 

    `yyyy-MM-dd'T'HH:mm:ss.SSS`, por exemplo, `2020-06-30T15:30:45.250`.

  As compensações relativas especificam uma diferença de período em relação à hora atual do sistema. A CLI do Greengrass é compatível com o seguinte formato para compensações relativas: `+|-[<value>h|hr|hours][valuem|min|minutes][value]s|sec|seconds`. 

  Por exemplo, o argumento a seguir para especificar uma janela de tempo entre 1 hora e 2 horas, 15 minutos antes da hora atual é `--time-window -2h15min,-1hr`.
+ `--verbose`. Mostra todos os campos das mensagens de log. Não use com `--syslog`.
+ `--no-color`, `-nc`. Remova o código de cores. O código de cores padrão para mensagens de log usa texto vermelho em negrito. É compatível apenas com terminais do tipo Unix porque usa sequências de escape ANSI.
+ `--before`, `-b`. O número de linhas a serem mostradas antes de uma entrada de log correspondente. O padrão é 0.
+ `--after`, `-a`. O número de linhas a serem mostradas após uma entrada de log correspondente. O padrão é 0.
+ `--syslog`. Processe todos os arquivos de log usando o protocolo syslog definido pelo RFC3164. Não use com `--log-dir` e `--verbose`. O protocolo syslog usa o seguinte formato: `"<$Priority>$Timestamp $Host $Logger ($Class): $Message"`. Se você não especificar um arquivo de log, a CLI do Greengrass lê as mensagens de log dos seguintes locais: `/var/log/messages`, `/var/log/syslog` ou `/var/log/system.log`. 

  No momento, o AWS IoT Greengrass não oferece suporte a esse recurso nos dispositivos principais do Windows. 
+ `--max-log-queue-size`, `-m`. O número máximo de entradas de log a serem alocadas na memória. Use essa opção para otimizar o uso da memória. O padrão é de 100.

**Saída**  
O exemplo a seguir mostra a saída produzida ao executar esse comando.  

```
$ sudo greengrass-cli logs get --verbose \
    --log-file /greengrass/v2/logs/greengrass.log \
    --filter deployment,serviceName=DeploymentService \
    --filter level=INFO \
    --time-window 2020-12-08T01:11:17,2020-12-08T01:11:22

2020-12-08T01:11:17.615Z [INFO] (pool-2-thread-14) com.aws.greengrass.deployment.DeploymentService: Current deployment finished. {DeploymentId=44d89f46-1a29-4044-ad89-5151213dfcbc, serviceName=DeploymentService, currentState=RUNNING}
2020-12-08T01:11:17.675Z [INFO] (pool-2-thread-14) com.aws.greengrass.deployment.IotJobsHelper: Updating status of persisted deployment. {Status=SUCCEEDED, StatusDetails={detailed-deployment-status=SUCCESSFUL}, ThingName=MyThing, JobId=22d89f46-1a29-4044-ad89-5151213dfcbc
```

## list-keywords
<a name="logs-list-keywords"></a>

Mostre as palavras-chave sugeridas que você pode usar para filtrar arquivos de log.

**Resumo**  

```
greengrass-cli logs list-keywords [arguments]
```

**Argumentos**  
Nenhum

**Saída**  
Os exemplos apresentados a seguir mostram a saída produzida ao executar esse comando.  

```
$ sudo greengrass-cli logs list-keywords

Here is a list of suggested keywords for Greengrass log:
level=$str
thread=$str
loggerName=$str
eventType=$str
serviceName=$str
error=$str
```

```
$ sudo greengrass-cli logs list-keywords --syslog

Here is a list of suggested keywords for syslog:
priority=$int
host=$str
logger=$str
class=$str
```

## list-log-files
<a name="logs-list-log-files"></a>

Mostre arquivos de log localizados em um diretório especificado.

**Resumo**  

```
greengrass-cli logs list-log-files [arguments]
```

**Argumentos**  
`--log-dir`, `-ld`. O caminho para o diretório para verificar os arquivos de log. 

**Saída**  
O exemplo a seguir mostra a saída produzida ao executar esse comando.  

```
$ sudo greengrass-cli logs list-log-files -ld /greengrass/v2/logs/

/greengrass/v2/logs/aws.greengrass.Nucleus.log
/greengrass/v2/logs/main.log
/greengrass/v2/logs/greengrass.log
Total 3 files found.
```