

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Antarmuka Baris Perintah Greengrass
<a name="gg-cli"></a>

Greengrass Command Line Interface (CLI) memungkinkan Anda berinteraksi AWS IoT Greengrass dengan Core di perangkat Anda untuk mengembangkan komponen dan masalah debug secara lokal. Misalnya, Anda dapat menggunakan Greengrass CLI untuk membuat deployment lokal dan me-restart komponen pada perangkat inti. 

Deploy [Komponen Greengrass CLI](greengrass-cli-component.md) (`aws.greengrass.Cli`) untuk menginstal Greengrass CLI pada perangkat inti Anda.

**penting**  
 <a name="local-dev-tools-production-environment-warning"></a>Kami menyarankan Anda menggunakan komponen ini hanya di lingkungan pengembangan, bukan lingkungan produksi. Komponen ini menyediakan akses ke informasi dan operasi yang biasanya tidak Anda perlukan di lingkungan produksi. Ikuti prinsip hak istimewa paling sedikit dengan menerapkan komponen ini hanya ke perangkat inti di mana Anda membutuhkannya. 

**Topics**
+ [Instal Greengrass CLI](install-gg-cli.md)
+ [Perintah Greengrass CLI](gg-cli-reference.md)

# Instal Greengrass CLI
<a name="install-gg-cli"></a>

Anda dapat menginstal Greengrass CLI dengan salah satu cara berikut: 
+ Gunakan `--deploy-dev-tools` argumen saat pertama kali menyiapkan perangkat lunak AWS IoT Greengrass Core di perangkat Anda. Anda juga harus menentukan `--provision true` untuk menerapkan argumen ini.
+ Deploy komponen Greengrass CLI (`aws.greengrass.Cli`) di perangkat Anda.

Bagian ini menjelaskan langkah-langkah untuk men-deploy komponen Greengrass CLI. Untuk informasi tentang menginstal Greengrass CLI selama pengaturan awal, lihat [Tutorial: Memulai dengan AWS IoT Greengrass V2](getting-started.md).

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

Untuk menerapkan komponen CLI Greengrass, Anda harus memenuhi persyaratan berikut:
+ AWS IoT Greengrass Perangkat lunak inti diinstal dan dikonfigurasi pada perangkat inti Anda. Untuk informasi selengkapnya, lihat [Tutorial: Memulai dengan AWS IoT Greengrass V2](getting-started.md). 
+ Untuk menggunakan AWS CLI untuk menyebarkan CLI Greengrass, Anda harus telah menginstal dan mengkonfigurasi. AWS CLI Untuk informasi lebih lanjut, lihat [Mengonfigurasi AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html) di *Panduan Pengguna AWS Command Line Interface *.
+ <a name="greengrass-cli-authorization-requirement"></a>Anda harus diberi wewenang untuk menggunakan CLI Greengrass untuk berinteraksi dengan perangkat lunak Core. AWS IoT Greengrass Lakukan salah satu langkah berikut untuk menggunakan Greengrass CLI:
  + Gunakan pengguna sistem yang menjalankan perangkat lunak AWS IoT Greengrass Core.
  + Gunakan pengguna dengan izin root atau adminstratif. Pada perangkat inti Linux, Anda dapat menggunakan `sudo` untuk mendapatkan izin root.
  + Gunakan pengguna sistem yang berada dalam grup yang Anda tentukan dalam parameter `AuthorizedPosixGroups` atau `AuthorizedWindowsGroups` konfigurasi saat Anda menerapkan komponen. Untuk informasi selengkapnya, lihat konfigurasi [komponen CLI Greengrass](greengrass-cli-component.md#greengrass-cli-component-configuration).

## Deploy komponen Greengrass CLI
<a name="gg-cli-deploy"></a>

Selesaikan langkah-langkah berikut untuk men-deploy komponen Greengrass CLI ke perangkat inti Anda:

### Untuk men-deploy komponen Greengrass CLI (konsol)
<a name="gg-cli-deploy-console"></a>

1. Masuk ke [konsol AWS IoT Greengrass](https://console.aws.amazon.com/greengrass).

1. Dalam menu navigasi, pilih **Komponen**.

1. Pada halaman **Komponen**, pada tab **Komponen publik**, pilih `aws.greengrass.Cli`.

1. Pada halaman **aws.greengrass.Cli** pilih **Deploy**.

1. Dari **Tambahkan ke deployment**, pilih **Buat deployment baru**.

1. Pada halaman **Tentukan target**, di bawah **Target deployment**, di daftar **Nama target**, pilih grup Greengrass yang ingin Anda deploy, dan pilih **Selanjutnya**.

1. Pada halaman **Pilih komponen**, verifikasi bahwa komponen **aws.greengrass.Cli** tersebut dipilih, dan pilih **Selanjutnya**.

1. Pada halaman **Konfigurasikan komponen**, simpan pengaturan konfigurasi default, dan pilih **Selanjutnya**.

1. Pada halaman **Konfigurasikan pengaturan lanjutan**, simpan pengaturan konfigurasi default tersebut, dan pilih **Selanjutnya**.

1. Di halaman **Tinjauan**, klik **Deploy**.

### Untuk men-deploy komponen Greengrass CLI (AWS CLI)
<a name="gg-cli-deploy-cli"></a>

1. Di perangkat Anda, buatlah file `deployment.json` untuk menentukan konfigurasi deployment untuk komponen Greengrass CLI. File ini akan terlihat seperti berikut:

   ```
   {
     "targetArn":"targetArn",
     "components": {
       "aws.greengrass.Cli": {
         "componentVersion": "2.16.1",
         "configurationUpdate": {
           "merge": "{\"AuthorizedPosixGroups\":\"<group1>,<group2>,...,<groupN>\",\"AuthorizedWindowsGroups\":\"<group1>,<group2>,...,<groupN>\"}"
         }
       }
     }
   }
   ```
   + Di kolom `target`, ganti `targetArn` dengan Amazon Resource Name (ARN) dari grup objek atau objek yang ditargetkan untuk deployment tersebut, dalam format berikut: 
     + Objek: `arn:aws:iot:region:account-id:thing/thingName`
     + Grup objek: `arn:aws:iot:region:account-id:thinggroup/thingGroupName`
   + Di objek komponen `aws.greengrass.Cli`, tentukan nilai-nilai sebagai berikut:  
`version`  
Versi komponen Greengrass CLI.  
`configurationUpdate.AuthorizedPosixGroups`  
(Opsional) String yang berisi daftar kelompok sistem yang dipisahkan dengan koma. Anda mengizinkan grup sistem ini untuk menggunakan CLI Greengrass untuk berinteraksi dengan perangkat lunak Inti. AWS IoT Greengrass Anda dapat menentukan nama grup atau grup IDs. Misalnya, `group1,1002,group3` mengotorisasi tiga grup sistem (`group1`, `1002`, dan `group3`) untuk menggunakan Greengrass CLI.  
Jika Anda tidak menentukan grup apa pun untuk diotorisasi, Anda dapat menggunakan Greengrass CLI sebagai `sudo` pengguna root () atau sebagai pengguna sistem yang menjalankan perangkat lunak Core. AWS IoT Greengrass   
`configurationUpdate.AuthorizedWindowsGroups`  
(Opsional) String yang berisi daftar kelompok sistem yang dipisahkan dengan koma. Anda mengizinkan grup sistem ini untuk menggunakan CLI Greengrass untuk berinteraksi dengan perangkat lunak Inti. AWS IoT Greengrass Anda dapat menentukan nama grup atau grup IDs. Misalnya, `group1,1002,group3` mengotorisasi tiga grup sistem (`group1`, `1002`, dan `group3`) untuk menggunakan Greengrass CLI.  
Jika Anda tidak menentukan grup apa pun untuk diotorisasi, Anda dapat menggunakan CLI Greengrass sebagai administrator atau sebagai pengguna sistem yang menjalankan perangkat lunak Core. AWS IoT Greengrass 

1. Jalankan perintah berikut untuk men-deploy komponen Greengrass CLI pada perangkat:

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

Selama instalasi, komponen menambahkan link simbolik ke `greengrass-cli` dalam folder `/greengrass/v2/bin` pada perangkat Anda, dan Anda menjalankan Greengrass CLI dari jalur ini. Untuk menjalankan Greengrass CLI tanpa path absolut, tambahkan folder `/greengrass/v2/bin` Anda ke variabel PATH Anda. Untuk memverifikasi instalasi Greengrass CLI, jalankan perintah berikut:

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

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

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

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

------

Anda akan melihat output berikut:

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

Jika `greengrass-cli` tidak ditemukan, deployment mungkin gagal untuk menginstal Greengrass CLI. Lihat informasi yang lebih lengkap di [Pemecahan masalah AWS IoT Greengrass V2](troubleshooting.md).

# Perintah Greengrass CLI
<a name="gg-cli-reference"></a>

CLI Greengrass menyediakan antarmuka baris perintah untuk berinteraksi secara lokal dengan perangkat inti Anda. AWS IoT Greengrass Perintah Greengrass CLI menggunakan format berikut.

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

Secara default, file yang `greengrass-cli` dapat dieksekusi di `/greengrass/v2/bin/` folder berinteraksi dengan versi perangkat lunak AWS IoT Greengrass Core yang berjalan di folder. `/greengrass/v2` Jika Anda memanggil executable yang tidak ditempatkan di lokasi ini, atau jika Anda ingin berinteraksi dengan perangkat lunak AWS IoT Greengrass Core di lokasi yang berbeda, maka Anda harus menggunakan salah satu metode berikut untuk secara eksplisit menentukan jalur root perangkat lunak AWS IoT Greengrass Core yang ingin Anda berinteraksi dengan:<a name="greengrass-cli-set-root-path"></a>
+ Atur `GGC_ROOT_PATH` variabel lingkungan ke `/greengrass/v2`.
+ Tambahkan `--ggcRootPath /greengrass/v2` argumen ke perintah Anda seperti yang ditunjukkan pada contoh berikut.

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

Anda dapat menggunakan argumen berikut dengan perintah apa pun:
+ Gunakan `--help` untuk informasi tentang perintah Greengrass CLI tertentu. 
+ Gunakan `--version` untuk informasi tentang versi Greengrass CLI.

Bagian ini menjelaskan perintah Greengrass CLI dan memberikan contoh untuk perintah ini. Sinopsis untuk setiap perintah menunjukkan argumen dan penggunaannya. Argumen opsional ditampilkan dalam tanda kurung siku.

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

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

Gunakan perintah `component` untuk berinteraksi dengan komponen lokal pada perangkat inti Anda. 

**Subperintah**
+ [detail](#component-details)
+ [daftar](#component-list)
+ [restart](#component-restart)
+ [berhenti](#component-stop)

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

Ambil versi, status, dan konfigurasi dari satu komponen. 

**Sinopsis**  

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

**Argumen**  
`--name`, `-n`. Nama komponen.

**Keluaran**  
Contoh berikut menunjukkan output yang dihasilkan ketika Anda menjalankan perintah ini.  

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

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

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

Ambil nama, versi, status, dan konfigurasi setiap komponen yang diinstal pada perangkat.

**Sinopsis**  

```
greengrass-cli component list
```

**Argumen**  
Tidak ada

**Keluaran**  
Contoh berikut menunjukkan output yang dihasilkan ketika Anda menjalankan perintah ini.  

```
$ 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"}
```

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

Mulai ulang komponen.

**Sinopsis**  

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

**Argumen**  
`--names`, `-n`. Nama komponen. Setidaknya satu nama komponen diperlukan. Anda dapat menentukan nama komponen tambahan, yang memisahkan setiap nama dengan koma.

**Keluaran**  
Tidak ada

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

Berhenti menjalankan komponen. 

**Sinopsis**  

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

**Argumen**  
`--names`, `-n`. Nama komponen. Setidaknya satu nama komponen diperlukan. Anda dapat menentukan nama komponen tambahan jika diperlukan, yang memisahkan setiap nama dengan koma.

**Keluaran**  
Tidak ada

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

Gunakan perintah `deployment` untuk berinteraksi dengan komponen lokal pada perangkat inti Anda. 

Untuk memantau kemajuan penerapan lokal, gunakan `status` subperintah. Anda tidak dapat memantau kemajuan penerapan lokal menggunakan konsol.

**Subperintah**
+ [buat](#deployment-create)
+ [membatalkan](#deployment-cancel)
+ [daftar](#deployment-list)
+ [status](#deployment-status)

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

Buat atau perbarui deployment lokal menggunakan resep komponen tertentu, artefak, dan argumen waktu aktif.

**Sinopsis**  

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

**Argumen**  
+ `--recipeDir`, `-r`. Jalur lengkap ke folder yang berisi file resep komponen.
+ `--artifactDir`, `-a`. Jalur lengkap ke folder yang berisi file artefak yang ingin Anda sertakan dalam deployment Anda. Folder artefak harus berisi struktur direktori berikut:

  ```
  /path/to/artifact/folder/<component-name>/<component-version>/<artifacts>
  ```
+ `--update-config`, `-c`. Argumen konfigurasi untuk deployment, disediakan sebagai string JSON atau file JSON. String JSON harus dalam format berikut: 

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

  `MERGE` dan `RESET` peka huruf besar-kecil dan harus dalam huruf besar.
+ `--groupId`, `-g`. Grup sasaran objek untuk deployment.
+ `--merge`, `-m`. Nama dan versi komponen target yang ingin Anda tambahkan atau perbarui. Anda harus memberikan informasi komponen dalam format `<component>=<version>`. Gunakan argumen terpisah untuk setiap komponen tambahan yang akan ditentukan. Jika diperlukan, gunakan `--runWith` argumen untuk memberikan`posixUser`,`posixGroup`, dan `windowsUser` informasi untuk menjalankan komponen.
+ `--runWith`. The`posixUser`,`posixGroup`, dan `windowsUser` informasi untuk menjalankan komponen generik atau Lambda. Anda harus memberikan informasi ini dalam format `<component>:{posixUser|windowsUser}=<user>[:<=posixGroup>]`. Misalnya, Anda dapat menentukan **HelloWorld:posixUser=ggc\$1user:ggc\$1group** atau**HelloWorld:windowsUser=ggc\$1user**. Gunakan argumen terpisah untuk setiap opsi tambahan yang akan ditentukan.

  Untuk informasi selengkapnya, lihat [Konfigurasikan pengguna yang menjalankan komponen](configure-greengrass-core-v2.md#configure-component-user).
+ `--systemLimits`. Batas sumber daya sistem untuk diterapkan pada proses komponen Lambda generik dan non-kontainer pada perangkat inti. Anda dapat mengonfigurasi jumlah maksimum penggunaan CPU dan RAM yang dapat digunakan oleh setiap proses komponen. Tentukan objek JSON serial atau jalur file ke file JSON. Objek JSON harus memiliki format berikut.

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

  Anda dapat mengonfigurasi batas sumber daya sistem berikut untuk setiap komponen:
  + `cpus`— <a name="system-resource-limits-cpu-definition-this"></a>Jumlah maksimum waktu CPU yang dapat digunakan oleh proses komponen ini pada perangkat inti. Total waktu CPU perangkat inti setara dengan jumlah inti CPU perangkat. Misalnya, pada perangkat inti dengan 4 core CPU, Anda dapat mengatur nilai ini `2` untuk membatasi proses komponen ini hingga 50 persen penggunaan setiap inti CPU. Pada perangkat dengan 1 inti CPU, Anda dapat mengatur nilai ini `0.25` untuk membatasi proses komponen ini hingga 25 persen penggunaan CPU. Jika Anda menetapkan nilai ini ke angka yang lebih besar dari jumlah inti CPU, perangkat lunak AWS IoT Greengrass Core tidak membatasi penggunaan CPU komponen. 
  + `memory`— <a name="system-resource-limits-memory-definition-this"></a>Jumlah maksimum RAM (dalam kilobyte) yang dapat digunakan oleh proses komponen ini pada perangkat inti. 

  Untuk informasi selengkapnya, lihat [Konfigurasikan batas sumber daya sistem untuk komponen](configure-greengrass-core-v2.md#configure-component-system-resource-limits).

  Fitur ini tersedia untuk v2.4.0 dan yang lebih baru dari [komponen inti Greengrass dan CLI Greengrass pada perangkat inti](greengrass-nucleus-component.md) Linux. AWS IoT Greengrass saat ini tidak mendukung fitur ini di perangkat inti Windows. 
+ `--remove`. Nama komponen target yang ingin Anda hapus dari deployment lokal. Untuk menghapus komponen yang digabung dari deployment cloud, Anda harus memberikan ID grup dari grup objek target dalam format berikut:

------
#### [ 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`. Mendefinisikan tindakan yang diambil saat penerapan gagal. Ada dua tindakan yang dapat Anda tentukan:
  + `ROLLBACK` – 
  + `DO_NOTHING` – 

  Fitur ini tersedia untuk v2.11.0 dan yang lebih baru. [Inti Greengrass](greengrass-nucleus-component.md)

**Keluaran**  
Contoh berikut menunjukkan output yang dihasilkan ketika Anda menjalankan perintah ini.  

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

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

Membatalkan penerapan yang ditentukan.

Sinopsis  

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

Pendapat  
`-i`. Pengenal unik dari penerapan untuk membatalkan. ID penyebaran dikembalikan dalam output `create` perintah.

Output  
+ Tidak ada

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

Ambil status dari 10 deployment lokal terakhir.

**Sinopsis**  

```
greengrass-cli deployment list
```

**Argumen**  
Tidak ada

**Keluaran**  
Contoh berikut menunjukkan output yang dihasilkan ketika Anda menjalankan perintah ini. Tergantung pada status deployment Anda, output menunjukkan salah satu dari nilai status berikut: `IN_PROGRESS`, `SUCCEEDED`, atau `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>

Ambil status deployment tertentu.

**Sinopsis**  

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

**Argumen**  
`-i`. ID deployment.

**Keluaran**  
Contoh berikut menunjukkan output yang dihasilkan ketika Anda menjalankan perintah ini. Tergantung pada status deployment Anda, output menunjukkan salah satu dari nilai status berikut: `IN_PROGRESS`, `SUCCEEDED`, atau `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>

Gunakan perintah `logs` untuk menganalisis log Greengrass pada perangkat inti Anda. 

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

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

Kumpulkan, filter, dan visualisasikan file log Greengrass. Perintah ini hanya mendukung file log berformat JSON. Anda dapat menentukan [format logging](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-logging-format) dalam konfigurasi nukleus.

**Sinopsis**  

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

**Argumen**  
+ `--log-dir`,`-ld`. Jalur ke direktori untuk memeriksa file log, seperti**`/greengrass/v2`/logs**. Jangan gunakan dengan `--syslog`. Gunakan argumen terpisah untuk setiap direktori tambahan yang akan ditentukan. Anda harus menggunakan setidaknya salah satu dari `--log-dir` atau `--log-file`. Anda juga dapat menggunakan kedua argumen dalam satu perintah. 
+ `--log-file`, `-lf`. Jalur ke direktori log yang ingin Anda gunakan. Gunakan argumen terpisah untuk setiap direktori tambahan yang akan ditentukan. Anda harus menggunakan setidaknya salah satu dari `--log-dir` atau `--log-file`. Anda juga dapat menggunakan kedua argumen dalam satu perintah.
+ `--follow`, `-fol`. Tampilkan pembaruan log saat terjadi. Greengrass CLI terus berjalan dan membaca dari log tertentu. Jika Anda menentukan jendela waktu, Greengrass CLI berhenti memantau log setelah semua jendela waktu berakhir.
+ `--filter`, `-f`. Kata kunci, ekspresi reguler, atau pasangan kunci-nilai untuk digunakan sebagai filter. Berikan nilai ini sebagai string, ekspresi reguler, atau sebagai pasangan kunci-nilai. Gunakan argumen terpisah untuk setiap filter tambahan yang akan ditentukan. 

  Ketika dievaluasi, beberapa filter yang ditentukan dalam argumen tunggal dipisahkan oleh operator OR, dan filter yang ditentukan dalam argumen tambahan digabungkan dengan operator AND. Misalnya, jika perintah Anda mencakup `--filter "installed" --filter "name=alpha,name=beta"`, maka Greengrass CLI akan memfilter dan menampilkan pesan log yang berisi baik kata kunci `installed` maupun kunci `name` yang memiliki nilai `alpha` atau `beta`.
+ `--time-window`, `-t`. Jendela waktu untuk menampilkan informasi log. Anda dapat menggunakan kedua stempel waktu yang tepat dan offset relatif. Anda harus memberikan informasi ini dalam format `<begin-time>,<end-time>`. Jika Anda tidak menentukan baik waktu mulai maupun waktu akhir, nilai untuk opsi default ke tanggal dan waktu sistem saat ini. Gunakan argumen terpisah untuk setiap jendela waktu tambahan yang akan ditentukan. 

  Greengrass CLI mendukung format berikut untuk stempel waktu:
  + `yyyy-MM-DD`, misalnya, `2020-06-30`. Waktu default adalah 00:00:00 ketika Anda menggunakan format ini.

    `yyyyMMDD`, misalnya, `20200630`. Waktu default adalah 00:00:00 ketika Anda menggunakan format ini.

    `HH:mm:ss`, misalnya, `15:30:45`. Tanggal default adalah tanggal sistem saat ini ketika Anda menggunakan format ini.

    `HH:mm:ssSSS`, misalnya, `15:30:45`. Tanggal default adalah tanggal sistem saat ini ketika Anda menggunakan format ini.

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

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

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

  Offset relatif menentukan jangka waktu offset dari waktu sistem saat ini. Greengrass CLI mendukung format berikut untuk offset relatif: `+|-[<value>h|hr|hours][valuem|min|minutes][value]s|sec|seconds`. 

  Misalnya, argumen berikut untuk menentukan jendela waktu antara 1 jam dan 2 jam 15 menit sebelum waktu saat ini adalah `--time-window -2h15min,-1hr`.
+ `--verbose`. Tampilkan semua kolom dari pesan log. Jangan gunakan dengan `--syslog`.
+ `--no-color`, `-nc`. Hapus kode warna. Default pengkodean warna untuk pesan log menggunakan teks merah tebal. Mendukung hanya terminal seperti UNIX karena menggunakan ANSI escape sequence.
+ `--before`, `-b`. Jumlah baris yang akan ditunjukkan mendahului entri log yang cocok. Default-nya adalah 0.
+ `--after`, `-a`. Jumlah baris yang akan ditunjukkan mengikuti entri log yang cocok. Default-nya adalah 0.
+ `--syslog`. Proses semua file log menggunakan protokol syslog yang ditentukan oleh. RFC3164 Jangan gunakan dengan `--log-dir` dan `--verbose`. Protokol syslog menggunakan format berikut: `"<$Priority>$Timestamp $Host $Logger ($Class): $Message"`. Jika Anda tidak menentukan berkas log, Greengrass CLI akan membaca pesan log dari lokasi-lokasi berikut: `/var/log/messages`, `/var/log/syslog`, atau `/var/log/system.log`. 

  AWS IoT Greengrass saat ini tidak mendukung fitur ini di perangkat inti Windows. 
+ `--max-log-queue-size`, `-m`. Jumlah maksimum entri log yang akan dialokasikan ke memori. Gunakan opsi ini untuk mengoptimalkan penggunaan memori. Default adalah 100.

**Keluaran**  
Contoh berikut menunjukkan output yang dihasilkan ketika Anda menjalankan perintah ini.  

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

Tampilkan kata kunci yang disarankan yang dapat Anda gunakan untuk memfilter berkas log.

**Sinopsis**  

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

**Argumen**  
Tidak ada

**Keluaran**  
Contoh berikut menunjukkan output yang dihasilkan ketika Anda menjalankan perintah ini.  

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

Tampilkan file log yang terletak di direktori tertentu.

**Sinopsis**  

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

**Argumen**  
`--log-dir`, `-ld`. Jalur ke direktori untuk memeriksa file log. 

**Keluaran**  
Contoh berikut menunjukkan output yang dihasilkan ketika Anda menjalankan perintah ini.  

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

Menggunakan perintah `get-debug-password` untuk mencetak sandi yang dihasilkan secara acak untuk [komponen konsol debug lokal](local-debug-console-component.md) (`aws.greengrass.LocalDebugConsole`). Kata sandi kedaluwarsa 8 jam setelah dibuat.

**Sinopsis**  

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

**Argumen**  
Tidak ada

**Keluaran**  
Contoh berikut menunjukkan output yang dihasilkan ketika Anda menjalankan perintah ini.  

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