

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Interfaccia a riga di comando Greengrass
<a name="gg-cli"></a>

L'interfaccia a riga di comando (CLI) di Greengrass consente di interagire con AWS IoT Greengrass Core sul dispositivo per sviluppare componenti ed eseguire il debug a livello locale. Ad esempio, è possibile utilizzare la CLI Greengrass per creare una distribuzione locale e riavviare un componente sul dispositivo principale. 

Implementa il `aws.greengrass.Cli` componente [Greengrass CLI](greengrass-cli-component.md) () per installare la Greengrass CLI sul tuo dispositivo principale.

**Importante**  
 <a name="local-dev-tools-production-environment-warning"></a>Si consiglia di utilizzare questo componente solo in ambienti di sviluppo, non in ambienti di produzione. Questo componente fornisce l'accesso a informazioni e operazioni che in genere non sono necessarie in un ambiente di produzione. Segui il principio del privilegio minimo distribuendo questo componente solo sui dispositivi principali dove ne hai bisogno. 

**Topics**
+ [Installazione della CLI di Greengrass](install-gg-cli.md)
+ [Comandi della CLI di Greengrass](gg-cli-reference.md)

# Installazione della CLI di Greengrass
<a name="install-gg-cli"></a>

È possibile installare la Greengrass CLI in uno dei seguenti modi: 
+ Usa l'`--deploy-dev-tools`argomento quando configuri per la prima volta il software AWS IoT Greengrass Core sul tuo dispositivo. È inoltre necessario specificare `--provision true` di applicare questo argomento.
+ Implementa il `aws.greengrass.Cli` componente Greengrass CLI () sul tuo dispositivo.

Questa sezione descrive i passaggi per distribuire il componente Greengrass CLI. Per informazioni sull'installazione della Greengrass CLI durante la configurazione iniziale, vedere. [Tutorial: Guida introduttiva a AWS IoT Greengrass V2](getting-started.md)

## Prerequisiti
<a name="gg-cli-prereqs"></a>

Per distribuire il componente Greengrass CLI, è necessario soddisfare i seguenti requisiti:
+ AWS IoT Greengrass Software di base installato e configurato sul dispositivo principale. Per ulteriori informazioni, consulta [Tutorial: Guida introduttiva a AWS IoT Greengrass V2](getting-started.md). 
+ Per utilizzare AWS CLI per distribuire la CLI Greengrass, è necessario aver installato e configurato il. AWS CLI Per ulteriori informazioni, consulta [Configurazione della AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html) nella *Guida per l'utente di AWS Command Line Interface *.
+ <a name="greengrass-cli-authorization-requirement"></a>È necessario essere autorizzati a utilizzare la CLI Greengrass per interagire con il software Core. AWS IoT Greengrass Effettuate una delle seguenti operazioni per utilizzare la Greengrass CLI:
  + Utilizzate l'utente di sistema che esegue il software AWS IoT Greengrass Core.
  + Usa un utente con autorizzazioni root o amministrative. Sui dispositivi principali di Linux, puoi utilizzarlo per ottenere i permessi `sudo` di root.
  + Usa un utente di sistema che fa parte di un gruppo specificato nei parametri di `AuthorizedWindowsGroups` configurazione `AuthorizedPosixGroups` o quando distribuisci il componente. Per ulteriori informazioni, consulta Configurazione dei componenti della [CLI di Greengrass](greengrass-cli-component.md#greengrass-cli-component-configuration).

## Implementa il componente Greengrass CLI
<a name="gg-cli-deploy"></a>

Completa i seguenti passaggi per distribuire il componente Greengrass CLI sul tuo dispositivo principale:

### Per distribuire il componente Greengrass CLI (console)
<a name="gg-cli-deploy-console"></a>

1. Accedi alla [console AWS IoT Greengrass](https://console.aws.amazon.com/greengrass).

1. **Nel menu di navigazione, scegli Componenti.**

1. Nella pagina **Componenti**, nella scheda **Componenti pubblici**, scegli `aws.greengrass.Cli`.

1. Nella pagina **aws.greengrass.Cli**, scegli **(Distribuisci)**.

1. Da **Aggiungi alla distribuzione**, scegli **Crea nuova distribuzione**.

1. **Nella pagina **Specificare la destinazione**, in **Destinazioni di distribuzione**, nell'elenco **Nome destinazione**, scegli il gruppo Greengrass in cui desideri eseguire la distribuzione e scegli Avanti.**

1. **Nella pagina **Seleziona componenti**, verifica che il **aws.greengrass.Cli**componente sia selezionato e scegli Avanti.**

1. Nella pagina **Configura componenti**, mantieni le impostazioni di configurazione predefinite e scegli **Avanti**.

1. Nella pagina **Configura impostazioni avanzate**, mantieni le impostazioni di configurazione predefinite e scegli **Avanti**.

1. Nella pagina di **revisione**, fai clic su **Distribuisci**

### Per distribuire il componente Greengrass CLI ()AWS CLI
<a name="gg-cli-deploy-cli"></a>

1. Sul tuo dispositivo, crea un `deployment.json` file per definire la configurazione di distribuzione per il componente Greengrass CLI. Questo file dovrebbe avere il seguente aspetto:

   ```
   {
     "targetArn":"targetArn",
     "components": {
       "aws.greengrass.Cli": {
         "componentVersion": "2.16.1",
         "configurationUpdate": {
           "merge": "{\"AuthorizedPosixGroups\":\"<group1>,<group2>,...,<groupN>\",\"AuthorizedWindowsGroups\":\"<group1>,<group2>,...,<groupN>\"}"
         }
       }
     }
   }
   ```
   + Nel campo `target`, sostituisci `targetArn` con il nome della risorsa Amazon (ARN) dell'oggetto o del gruppo di oggetti a cui destinare la distribuzione, nel seguente formato: 
     + Oggetto: `arn:aws:iot:region:account-id:thing/thingName`
     + Gruppo di oggetti: `arn:aws:iot:region:account-id:thinggroup/thingGroupName`
   + Nell'oggetto `aws.greengrass.Cli` componente, specificate i valori come segue:  
`version`  
La versione del componente Greengrass CLI.  
`configurationUpdate.AuthorizedPosixGroups`  
(Facoltativo) Una stringa che contiene un elenco di gruppi di sistema separati da virgole. Autorizzi questi gruppi di sistema a utilizzare la CLI Greengrass per interagire con AWS IoT Greengrass il software Core. È possibile specificare nomi o gruppi di gruppi. IDs Ad esempio, `group1,1002,group3` autorizza tre gruppi di sistema (`group1``1002`, e`group3`) a utilizzare la CLI Greengrass.  
Se non specifichi alcun gruppo da autorizzare, puoi utilizzare la CLI Greengrass come `sudo` utente root () o come utente di sistema che AWS IoT Greengrass esegue il software Core.  
`configurationUpdate.AuthorizedWindowsGroups`  
(Facoltativo) Una stringa che contiene un elenco separato da virgole di gruppi di sistema. Autorizzi questi gruppi di sistema a utilizzare la CLI Greengrass per interagire con AWS IoT Greengrass il software Core. È possibile specificare nomi o gruppi di gruppi. IDs Ad esempio, `group1,1002,group3` autorizza tre gruppi di sistema (`group1``1002`, e`group3`) a utilizzare la CLI Greengrass.  
Se non specifichi alcun gruppo da autorizzare, puoi utilizzare la CLI Greengrass come amministratore o come utente di sistema che AWS IoT Greengrass esegue il software Core.

1. Esegui il comando seguente per distribuire il componente Greengrass CLI sul dispositivo:

   ```
   $ aws greengrassv2 create-deployment --cli-input-json file://path/to/deployment.json
   ```

Durante l'installazione, il componente aggiunge un collegamento simbolico `/greengrass/v2/bin` nella cartella del dispositivo e da questo percorso si esegue la Greengrass CLI. `greengrass-cli` Per eseguire la CLI di Greengrass senza il percorso assoluto, aggiungi la `/greengrass/v2/bin` cartella alla variabile PATH. Per verificare l'installazione della CLI di Greengrass, esegui il seguente comando:

------
#### [ Linux or Unix ]

```
/greengrass/v2/bin/greengrass-cli help
```

------
#### [ Windows ]

```
C:\greengrass\v2\bin\greengrass-cli help
```

------

Verrà visualizzato l’output seguente:

```
Usage: greengrass-cli [-hV] [--ggcRootPath=<ggcRootPath>] [COMMAND]
Greengrass command line interface

      --ggcRootPath=<ggcRootPath>
                  The AWS IoT Greengrass V2 root directory.
  -h, --help      Show this help message and exit.
  -V, --version   Print version information and exit.
Commands:
  help                Show help information for a command.
  component           Retrieve component information and stop or restart
                        components.
  deployment          Create local deployments and retrieve deployment status.
  logs                Analyze Greengrass logs.
  get-debug-password  Generate a password for use with the HTTP debug view
                        component.
```

Se `greengrass-cli` non viene trovato, la distribuzione potrebbe non essere riuscita a installare la CLI di Greengrass. Per ulteriori informazioni, consulta [Risoluzione dei problemi AWS IoT Greengrass V2](troubleshooting.md).

# Comandi della CLI di Greengrass
<a name="gg-cli-reference"></a>

La CLI di Greengrass fornisce un'interfaccia a riga di comando per interagire localmente con il dispositivo principale. AWS IoT Greengrass I comandi della CLI di Greengrass utilizzano il seguente formato.

```
$ greengrass-cli <command> <subcommand> [arguments]
```

Per impostazione predefinita, il file `greengrass-cli` eseguibile contenuto nella `/greengrass/v2/bin/` cartella interagisce con la versione del software AWS IoT Greengrass Core in esecuzione nella cartella. `/greengrass/v2` Se chiamate un file eseguibile che non si trova in questa posizione o se desiderate interagire con il software AWS IoT Greengrass Core in una posizione diversa, dovete utilizzare uno dei seguenti metodi per specificare in modo esplicito il percorso principale del software AWS IoT Greengrass Core con cui desiderate interagire:<a name="greengrass-cli-set-root-path"></a>
+ Impostare la variabile di ambiente `GGC_ROOT_PATH` su `/greengrass/v2`.
+ Aggiungete l'`--ggcRootPath /greengrass/v2`argomento al comando come illustrato nell'esempio seguente.

  ```
  greengrass-cli --ggcRootPath /greengrass/v2 <command> <subcommand> [arguments]
  ```

È possibile utilizzare i seguenti argomenti con qualsiasi comando:
+ Utilizzare `--help` per informazioni su uno specifico comando della CLI di Greengrass. 
+ Utilizzare `--version` per informazioni sulla versione della CLI di Greengrass.

Questa sezione descrive i comandi della CLI di Greengrass e fornisce esempi per questi comandi. La sinossi di ogni comando mostra i relativi argomenti e il loro utilizzo. Gli argomenti opzionali sono indicati tra parentesi quadre.

**Topics**
+ [componente](gg-cli-component.md)
+ [implementazione](gg-cli-deployment.md)
+ [log](gg-cli-logs.md)
+ [get-debug-password](gg-cli-get-debug-password.md)

# componente
<a name="gg-cli-component"></a>

Utilizzate il `component` comando per interagire con i componenti locali del dispositivo principale. 

**Sottocomandi**
+ [details](#component-details)
+ [elenco](#component-list)
+ [riavviare](#component-restart)
+ [arresta](#component-stop)

## details
<a name="component-details"></a>

Recupera la versione, lo stato e la configurazione di un componente. 

**Riepilogo**  

```
greengrass-cli component details --name <component-name> 
```

**Arguments (Argomenti)**  
`--name`,`-n`. Il nome del componente.

**Output**  
L'esempio seguente mostra l'output prodotto quando si esegue questo comando.  

```
$ sudo greengrass-cli component details --name MyComponent 

Component Name: MyComponent 
Version: 1.0.0
State: RUNNING
Configuration: null
```

## elenco
<a name="component-list"></a>

Recupera il nome, la versione, lo stato e la configurazione di ogni componente installato sul dispositivo.

**Riepilogo**  

```
greengrass-cli component list
```

**Arguments (Argomenti)**  
Nessuno

**Output**  
L'esempio seguente mostra l'output prodotto quando si esegue questo comando.  

```
$ sudo greengrass-cli component list

Components currently running in Greengrass:
Component Name: FleetStatusService
Version: 0.0.0
State: RUNNING
Configuration: {"periodicUpdateIntervalSec":86400.0}
Component Name: UpdateSystemPolicyService
Version: 0.0.0
State: RUNNING
Configuration: null
Component Name: aws.greengrass.Nucleus
Version: 2.0.0
State: FINISHED
Configuration: {"awsRegion":"region","runWithDefault":{"posixUser":"ggc_user:ggc_group"},"telemetry":{}}
Component Name: DeploymentService
Version: 0.0.0
State: RUNNING
Configuration: null
Component Name: TelemetryAgent
Version: 0.0.0
State: RUNNING
Configuration: null
Component Name: aws.greengrass.Cli
Version: 2.0.0
State: RUNNING
Configuration: {"AuthorizedPosixGroups":"ggc_user"}
```

## riavviare
<a name="component-restart"></a>

Riavviare i componenti.

**Riepilogo**  

```
greengrass-cli component restart --names <component-name>,...
```

**Arguments (Argomenti)**  
`--names`,`-n`. Il nome del componente. È richiesto almeno il nome di un componente. È possibile specificare nomi di componenti aggiuntivi, separando ogni nome con una virgola.

**Output**  
Nessuno

## arresta
<a name="component-stop"></a>

Smettete di far funzionare i componenti. 

**Riepilogo**  

```
greengrass-cli component stop --names <component-name>,...
```

**Arguments (Argomenti)**  
`--names`,`-n`. Il nome del componente. È richiesto almeno il nome di un componente. È possibile specificare nomi di componenti aggiuntivi, se necessario, separando ogni nome con una virgola.

**Output**  
Nessuno

# implementazione
<a name="gg-cli-deployment"></a>

Utilizzate il `deployment` comando per interagire con i componenti locali del dispositivo principale. 

Per monitorare l'avanzamento di una distribuzione locale, usa il `status` sottocomando. Non è possibile monitorare l'avanzamento di una distribuzione locale utilizzando la console.

**Sottocomandi**
+ [Crea](#deployment-create)
+ [annullare](#deployment-cancel)
+ [elenco](#deployment-list)
+ [status](#deployment-status)

## Crea
<a name="deployment-create"></a>

Crea o aggiorna una distribuzione locale utilizzando ricette di componenti, artefatti e argomenti di runtime specifici.

**Riepilogo**  

```
greengrass-cli deployment create 
    --recipeDir path/to/component/recipe
    [--artifactDir path/to/artifact/folder ]
    [--update-config {component-configuration}]
    [--groupId <thing-group>]
    [--merge "<component-name>=<component-version>"]...
    [--runWith "<component-name>:posixUser=<user-name>[:<group-name>]"]...
    [--systemLimits "{component-system-resource-limits}]"]...
    [--remove <component-name>,...]
    [--failure-handling-policy <policy name[ROLLBACK, DO_NOTHING]>]
```

**Arguments (Argomenti)**  
+ `--recipeDir`,. `-r` Il percorso completo della cartella che contiene i file di ricette dei componenti.
+ `--artifactDir`,`-a`. Il percorso completo della cartella che contiene i file degli artefatti da includere nella distribuzione. La cartella artifacts deve contenere la seguente struttura di directory:

  ```
  /path/to/artifact/folder/<component-name>/<component-version>/<artifacts>
  ```
+ `--update-config`,. `-c` Gli argomenti di configurazione per la distribuzione, forniti come stringa JSON o file JSON. La stringa JSON deve avere il seguente formato: 

  ```
  { \
    "componentName": { \ 
      "MERGE": {"config-key": "config-value"}, \
      "RESET": ["path/to/reset/"] \
    } \
  }
  ```

  `MERGE`e `RESET` fanno distinzione tra maiuscole e minuscole e devono essere scritte in maiuscolo.
+ `--groupId`,. `-g` Il gruppo di oggetti bersaglio per la distribuzione.
+ `--merge`,`-m`. Il nome e la versione del componente di destinazione che desideri aggiungere o aggiornare. È necessario fornire le informazioni sul componente nel formato`<component>=<version>`. Utilizzate un argomento separato per ogni componente aggiuntivo da specificare. Se necessario, utilizzate l'`--runWith`argomento per fornire le `windowsUser` informazioni `posixUser``posixGroup`, e per l'esecuzione del componente.
+ `--runWith`. `posixUser``posixGroup`, e `windowsUser` informazioni per l'esecuzione di un componente generico o Lambda. È necessario fornire queste informazioni nel formato`<component>:{posixUser|windowsUser}=<user>[:<=posixGroup>]`. Ad esempio, è possibile specificare **HelloWorld:posixUser=ggc\$1user:ggc\$1group** o**HelloWorld:windowsUser=ggc\$1user**. Utilizzate un argomento separato per ogni opzione aggiuntiva da specificare.

  Per ulteriori informazioni, consulta [Configurare l'utente che esegue i componenti](configure-greengrass-core-v2.md#configure-component-user).
+ `--systemLimits`. I limiti delle risorse di sistema da applicare ai processi dei componenti Lambda generici e non containerizzati sul dispositivo principale. È possibile configurare la quantità massima di utilizzo di CPU e RAM utilizzabile dai processi di ciascun componente. Specificate un oggetto JSON serializzato o il percorso di un file JSON. L'oggetto JSON deve avere il seguente formato.

  ```
  {  \
    "componentName": { \ 
      "cpus": cpuTimeLimit, \
      "memory": memoryLimitInKb \
    } \
  }
  ```

  È possibile configurare i seguenti limiti di risorse di sistema per ogni componente:
  + `cpus`— <a name="system-resource-limits-cpu-definition-this"></a>La quantità massima di tempo di CPU che i processi di questo componente possono utilizzare sul dispositivo principale. Il tempo totale della CPU di un dispositivo principale è equivalente al numero di core CPU del dispositivo. Ad esempio, su un dispositivo principale con 4 core CPU, è possibile impostare questo valore in modo da `2` limitare i processi di questo componente al 50% di utilizzo di ciascun core della CPU. Su un dispositivo con 1 core di CPU, puoi impostare questo valore `0.25` per limitare i processi di questo componente al 25 percento di utilizzo della CPU. Se imposti questo valore su un numero maggiore del numero di core della CPU, il software AWS IoT Greengrass Core non limita l'utilizzo della CPU del componente. 
  + `memory`— <a name="system-resource-limits-memory-definition-this"></a>La quantità massima di RAM (in kilobyte) che i processi di questo componente possono utilizzare sul dispositivo principale. 

  Per ulteriori informazioni, consulta [Configura i limiti delle risorse di sistema per i componenti](configure-greengrass-core-v2.md#configure-component-system-resource-limits).

  Questa funzionalità è disponibile per la versione 2.4.0 e successive del componente Greengrass [nucleus e della Greengrass CLI](greengrass-nucleus-component.md) sui dispositivi core Linux. AWS IoT Greengrass attualmente non supporta questa funzionalità sui dispositivi Windows core. 
+ `--remove`. Il nome del componente di destinazione che si desidera rimuovere da una distribuzione locale. Per rimuovere un componente che è stato unito da una distribuzione cloud, è necessario fornire l'ID di gruppo del thing group di destinazione nel seguente formato:

------
#### [ Greengrass nucleus v2.4.0 and later ]

  ```
  --remove <component-name> --groupId <group-name>
  ```

------
#### [ Earlier than v2.4.0 ]

  ```
  --remove <component-name> --groupId thinggroup/<group-name>
  ```

------
+ `--failure-handling-policy`. Definisce l'azione intrapresa in caso di errore di una distribuzione. È possibile specificare due azioni:
  + `ROLLBACK` – 
  + `DO_NOTHING` – 

  Questa funzionalità è disponibile per la versione 2.11.0 e successive di. [Nucleo Greengrass](greengrass-nucleus-component.md)

**Output**  
L'esempio seguente mostra l'output prodotto quando si esegue questo comando.  

```
$ sudo greengrass-cli deployment create \
    --merge MyApp1=1.0.0 \
    --merge MyApp2=1.0.0 --runWith MyApp2:posixUser=ggc_user \
    --remove MyApp3 \
    --recipeDir recipes/ \ 
    --artifactDir artifacts/

Local deployment has been submitted! Deployment Id: 44d89f46-1a29-4044-ad89-5151213dfcbc
```

## annullare
<a name="deployment-cancel"></a>

Annulla la distribuzione specificata.

Riepilogo  

```
greengrass-cli deployment cancel
    -i <deployment-id>
```

Argomenti  
`-i`. L'identificatore univoco della distribuzione da annullare. L'ID di distribuzione viene restituito nell'output del `create` comando.

Output  
+ Nessuno

## elenco
<a name="deployment-list"></a>

Recupera lo stato delle ultime 10 distribuzioni locali.

**Riepilogo**  

```
greengrass-cli deployment list
```

**Arguments (Argomenti)**  
Nessuno

**Output**  
L'esempio seguente mostra l'output prodotto quando si esegue questo comando. A seconda dello stato della distribuzione, l'output mostra uno dei seguenti valori di stato: `IN_PROGRESS``SUCCEEDED`, o`FAILED`.  

```
$ sudo greengrass-cli deployment list

44d89f46-1a29-4044-ad89-5151213dfcbc: SUCCEEDED
Created on: 6/27/23 11:05 AM
```

## status
<a name="deployment-status"></a>

Recupera lo stato di una distribuzione specifica.

**Riepilogo**  

```
greengrass-cli deployment status -i <deployment-id>
```

**Arguments (Argomenti)**  
`-i`. L'ID della distribuzione.

**Output**  
L'esempio seguente mostra l'output prodotto quando si esegue questo comando. A seconda dello stato della distribuzione, l'output mostra uno dei seguenti valori di stato: `IN_PROGRESS``SUCCEEDED`, o`FAILED`.  

```
$ sudo greengrass-cli deployment status -i 44d89f46-1a29-4044-ad89-5151213dfcbc

44d89f46-1a29-4044-ad89-5151213dfcbc: FAILED
Created on: 6/27/23 11:05 AM
Detailed Status: <Detailed deployment status>
Deployment Error Stack: List of error codes
Deployment Error Types: List of error types
Failure Cause: Cause
```

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

Usa il `logs` comando per analizzare i log di Greengrass sul tuo dispositivo principale. 

**Sottocomandi**
+ [get](#logs-get)
+ [elenca-parole chiave](#logs-list-keywords)
+ [list-log-files](#logs-list-log-files)

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

Raccogli, filtra e visualizza i file di registro Greengrass. Questo comando supporta solo file di registro in formato JSON. È possibile specificare il [formato di registrazione nella configurazione del nucleo](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-logging-format).

**Riepilogo**  

```
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> ]
```

**Arguments (Argomenti)**  
+ `--log-dir`,. `-ld` Il percorso della directory in cui verificare la presenza di file di registro, ad esempio**`/greengrass/v2`/logs**. Non utilizzare con`--syslog`. Utilizzate un argomento separato per ogni directory aggiuntiva da specificare. È necessario utilizzare almeno uno degli `--log-dir` o`--log-file`. È inoltre possibile utilizzare entrambi gli argomenti in un unico comando. 
+ `--log-file`,`-lf`. I percorsi delle directory di registro che desideri utilizzare. Utilizzate un argomento separato per ogni directory aggiuntiva da specificare. È necessario utilizzare almeno uno degli `--log-dir` o`--log-file`. È inoltre possibile utilizzare entrambi gli argomenti in un unico comando.
+ `--follow`,`-fol`. Mostra gli aggiornamenti del registro man mano che si verificano. La CLI di Greengrass continua a funzionare e legge i log specificati. Se si specifica una finestra temporale, la CLI di Greengrass interrompe il monitoraggio dei log al termine di tutte le finestre temporali.
+ `--filter`,. `-f` La parola chiave, le espressioni regolari o la coppia chiave-valore da usare come filtro. Fornite questo valore come stringa, espressione regolare o coppia chiave-valore. Utilizzate un argomento separato per ogni filtro aggiuntivo da specificare. 

  Quando vengono valutati, più filtri specificati in un singolo argomento vengono separati da operatori OR e i filtri specificati negli argomenti aggiuntivi vengono combinati con gli operatori AND. Ad esempio, se il comando include`--filter "installed" --filter "name=alpha,name=beta"`, Greengrass CLI filtrerà e visualizzerà i messaggi di registro che contengono sia la parola chiave che una `name` chiave con `installed` i valori o. `alpha` `beta`
+ `--time-window`,. `-t` La finestra temporale per la quale mostrare le informazioni del registro. È possibile utilizzare sia i timestamp esatti che gli offset relativi. È necessario fornire queste informazioni nel formato. `<begin-time>,<end-time>` Se non si specifica né l'ora di inizio né l'ora di fine, il valore predefinito di tale opzione è la data e l'ora correnti del sistema. Utilizzate un argomento separato per ogni finestra temporale aggiuntiva da specificare. 

  La CLI di Greengrass supporta i seguenti formati per i timestamp:
  + `yyyy-MM-DD`, ad esempio,. `2020-06-30` L'ora predefinita è 00:00:00 quando si utilizza questo formato.

    `yyyyMMDD`, ad esempio,. `20200630` L'ora predefinita è 00:00:00 quando si utilizza questo formato.

    `HH:mm:ss`, ad esempio,. `15:30:45` La data predefinita è la data di sistema corrente quando si utilizza questo formato.

    `HH:mm:ssSSS`, ad esempio,. `15:30:45` La data predefinita è la data corrente del sistema quando si utilizza questo formato.

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

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

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

  Gli offset relativi specificano uno scostamento del periodo di tempo dall'ora corrente del sistema. La CLI di Greengrass supporta il seguente formato per gli offset relativi:. `+|-[<value>h|hr|hours][valuem|min|minutes][value]s|sec|seconds` 

  Ad esempio, il seguente argomento per specificare una finestra temporale compresa tra 1 ora e 2 ore 15 minuti prima dell'ora corrente è. `--time-window -2h15min,-1hr`
+ `--verbose`. Mostra tutti i campi dei messaggi di registro. Non utilizzare con`--syslog`.
+ `--no-color`,`-nc`. Rimuovi la codifica a colori. La codifica a colori predefinita per i messaggi di registro utilizza il testo in grassetto rosso. Supporta solo terminali simili a Unix perché utilizza sequenze di escape ANSI.
+ `--before`,`-b`. Il numero di righe da mostrare prima di una voce di registro corrispondente. Il valore predefinito è 0.
+ `--after`,. `-a` Il numero di righe da mostrare dopo una voce di registro corrispondente. Il valore predefinito è 0.
+ `--syslog`. Elabora tutti i file di registro utilizzando il protocollo syslog definito da. RFC3164 Non utilizzare con `--log-dir` and. `--verbose` Il protocollo syslog utilizza il seguente formato:. `"<$Priority>$Timestamp $Host $Logger ($Class): $Message"` Se non si specifica un file di registro, la CLI di Greengrass legge i messaggi di registro dalle seguenti posizioni:`/var/log/messages`, o il. `/var/log/syslog` `/var/log/system.log` 

  AWS IoT Greengrass attualmente non supporta questa funzionalità sui dispositivi Windows core. 
+ `--max-log-queue-size`,`-m`. Il numero massimo di voci di registro da allocare alla memoria. Utilizzate questa opzione per ottimizzare l'utilizzo della memoria. L'impostazione predefinita è 100.

**Output**  
L'esempio seguente mostra l'output prodotto quando si esegue questo 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
```

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

Mostra le parole chiave suggerite che è possibile utilizzare per filtrare i file di registro.

**Riepilogo**  

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

**Arguments (Argomenti)**  
Nessuno

**Output**  
Gli esempi seguenti mostrano l'output prodotto quando si esegue questo 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>

Mostra i file di registro che si trovano in una directory specificata.

**Riepilogo**  

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

**Arguments (Argomenti)**  
`--log-dir`,`-ld`. Il percorso della directory in cui verificare la presenza di file di registro. 

**Output**  
L'esempio seguente mostra l'output prodotto quando si esegue questo 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.
```

# get-debug-password
<a name="gg-cli-get-debug-password"></a>

Utilizzate il `get-debug-password` comando per stampare una password generata casualmente per il componente della console di [debug locale](local-debug-console-component.md) (). `aws.greengrass.LocalDebugConsole` La password scade 8 ore dopo la generazione.

**Riepilogo**  

```
greengrass-cli get-debug-password
```

**Arguments (Argomenti)**  
Nessuno

**Output**  
L'esempio seguente mostra l'output prodotto quando si esegue questo comando.  

```
$ sudo greengrass-cli get-debug-password

Username: debug
Password: bEDp3MOHdj8ou2w5de_sCBI2XAaguy3a8XxREXAMPLE
Password expires at: 2021-04-01T17:01:43.921999931-07:00
The local debug console is configured to use TLS security. The certificate is self-signed so you will need to bypass your web browser's security warnings to open the console.
Before you bypass the security warning, verify that the certificate fingerprint matches the following fingerprints.
SHA-256: 15 0B 2C E2 54 8B 22 DE 08 46 54 8A B1 2B 25 DE FB 02 7D 01 4E 4A 56 67 96 DA A6 CC B1 D2 C4 1B
SHA-1: BC 3E 16 04 D3 80 70 DA E0 47 25 F9 90 FA D6 02 80 3E B5 C1
```