PemantauanAWS IoT Greengrasslog - AWS IoT Greengrass

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

PemantauanAWS IoT Greengrasslog

AWS IoT Greengrass terdiri dari layanan cloud dan AWS IoT Greengrass perangkat lunak core. YangAWS IoT GreengrassPerangkat lunak inti dapat menulis log ke Amazon CloudWatch Log dan ke sistem file lokal perangkat inti. Komponen Greengrass yang berjalan pada perangkat core juga dapat menulis log CloudWatch Log dan sistem file lokal. Anda dapat menggunakan log untuk memantau acara dan meyelesaikan masalah. Semua entri log AWS IoT Greengrass termasuk timestamp, tingkat log, dan informasi tentang acara.

Secara defaultAWS IoT GreengrassPerangkat lunak inti menulis log hanya pada sistem file lokal. Anda dapat melihat log sistem file secara real time, sehingga Anda dapat men-debug komponen Greengrass yang Anda kembangkan dan terapkan. Anda juga dapat mengkonfigurasi perangkat inti untuk menulis log CloudWatch Log, sehingga Anda dapat memecahkan masalah perangkat inti tanpa akses ke sistem file lokal. Untuk informasi selengkapnya, lihat Aktifkan pencatatan CloudWatch Beberapa catatan.

Mengakses log sistem file

YangAWS IoT GreengrassPerangkat lunak inti menyimpan log di/greengrass/v2/logsfolder pada perangkat inti, di mana/greengrass/v2adalah jalurAWS IoT Greengrassfolder akar. Folder log memiliki struktur berikut.

/greengrass/v2 └── logs ├── greengrass.log ├── greengrass_2021_09_14_15_0.log ├── ComponentName.log ├── ComponentName_2021_09_14_15_0.log └── main.log
  • greengrass.log— ItuAWS IoT GreengrassFile log perangkat lunak inti. Gunakan file log ini untuk melihat informasi real-time tentang komponen dan penerapan. File log ini mencakup log untuk inti Greengrass, yang merupakan inti dariAWS IoT GreengrassPerangkat lunak inti, dan komponen plugin, sepertiManajer logdanSecrets.

  • ComponentName.log- Greengrass file log komponen. Gunakan file log komponen untuk menampilkan informasi real-time tentang komponen Greengrass yang berjalan pada perangkat inti. Komponen generik dan komponen Lambda menulis output standar (stdout) dan kesalahan standar (stderr) ke file log ini.

  • main.log- File log untukmainlayanan yang menangani siklus hidup komponen. File log ini akan selalu kosong.

Untuk informasi lebih lanjut tentang perbedaan antara komponen plugin, generik, dan komponen Lambda, lihatJenis komponen.

Pertimbangan berikut berlaku saat Anda menggunakan log sistem file:

  • Izin pengguna root

    Anda harus memiliki izin root untuk membacaAWS IoT Greengrasspada sistem file.

  • Rotasi file

    YangAWS IoT GreengrassPerangkat lunak inti memutar file log setiap jam atau ketika mereka melebihi batas ukuran file. File log yang diputar berisi stempel waktu dalam nama file mereka. Misalnya, diputarAWS IoT GreengrassFile log perangkat lunak inti mungkin diberi namagreengrass_2021_09_14_15_0.log. Batas ukuran file default adalah 1.024 KB (1 MB). Anda dapat mengkonfigurasi batas ukuran file padaKomponen nukleus Greengrass.

  • Penghapusan file

    YangAWS IoT GreengrassPerangkat lunak inti membersihkan file log sebelumnya ketika ukuranAWS IoT GreengrassFile log perangkat lunak inti atau file log komponen Greengrass, termasuk file log yang diputar, melebihi batas ruang disk. Batas ruang disk default untukAWS IoT GreengrassLog perangkat lunak inti dan setiap log komponen adalah 10.240 KB (10 MB). Anda dapat mengonfigurasiAWS IoT GreengrassBatas ruang disk log perangkat lunak inti padaKomponen nukleus GreengrassatauKomponen manajer log. Anda dapat mengkonfigurasi batas ruang disk log setiap komponen padaKomponen manajer log.

Untuk melihatAWS IoT GreengrassFile log

  • Jalankan perintah berikut untuk melihat file log secara real time. Ganti /greengrass/v2 dengan jalur menuju AWS IoT Greengrass folder asal.

    Linux or Unix
    sudo tail -f /greengrass/v2/logs/greengrass.log
    Windows Command Prompt (CMD)
    type C:\greengrass\v2\logs\com.example.HelloWorld.log

    Yangtypeperintah menulis isi file ke terminal. Jalankan perintah ini beberapa kali untuk mengamati perubahan dalam file.

    Yangtypeperintah menulis isi file ke terminal. Jalankan perintah ini beberapa kali untuk mengamati perubahan dalam file.

    PowerShell
    gc C:\greengrass\v2\logs\greengrass.log -Tail 10 -Wait

Untuk melihat berkas log untuk komponen

  • Jalankan perintah berikut untuk melihat file log secara real time. Ganti/greengrass/v2atauC:\greengrass\v2dengan jalurAWS IoT Greengrassfolder root, dan ganticom.contoh.HelloWorlddengan nama komponen.

    Linux or Unix
    sudo tail -f /greengrass/v2/logs/com.example.HelloWorld.log
    PowerShell
    gc C:\greengrass\v2\logs\com.example.HelloWorld.log -Tail 10 -Wait

Anda juga dapat menggunakanlogsperintah dariGreengrass CLIuntuk menganalisis log Greengrass pada perangkat inti. Untuk menggunakanlogsperintah, Anda harus mengkonfigurasiInti Greengrassuntuk menampilkan file log format JSON. Untuk informasi selengkapnya, lihat Antarmuka Baris Perintah Greengrass dan log.

Akses CloudWatch Beberapa catatan

Anda dapat menyebarkanKomponen manajer loguntuk mengkonfigurasi perangkat inti untuk menulis CloudWatch Log. Untuk informasi selengkapnya, lihat Aktifkan pencatatan CloudWatch Beberapa catatan. Kemudian, Anda dapat melihat log padaBeberapa catatanhalaman Amazon CloudWatch konsol atau menggunakan CloudWatch API Log.

Nama grup log
/aws/greengrass/componentType/region/componentName

Nama grup log menggunakan variabel berikut:

  • componentType — Jenis komponen, yang dapat berupa salah satu dari berikut ini:

    • GreengrassSystemComponent — Komponen adalah bagian dari nukleus Greengrass. Grup log ini mencakup log untuk komponen plugin, yang berjalan di JVM yang sama dengan inti Greengrass.

    • UserComponent — Komponen adalah bagian dari nukleus Greengrass. Grup log ini mencakup log untuk komponen generik, komponen Lambda, dan aplikasi lainnya pada perangkat.

    Untuk informasi selengkapnya, lihat Jenis komponen.

  • region — Wilayah AWS yang menggunakan perangkat inti.

  • componentName — Nama komponen. Untuk log sistem, nilai ini adalah System.

Nama pengaliran log
/date/thing/thingName

Nama aliran log menggunakan variabel berikut:

  • date — Tanggal log, seperti 2020/12/15. Komponen manajer log menggunakan format yyyy/MM/dd.

  • thingName - Nama perangkat inti.

catatan

Jika nama objek berisi titik dua (:), manajer log akan menggantikan titik dua dengan tanda tambah (+).

Pertimbangan berikut berlaku saat Anda menggunakan komponen pengelola log untuk menulis CloudWatch Log:

  • Penundaan log

    Komponen pengelola log menulis log dari hanya file log yang diputar. Secara default,AWS IoT GreengrassPerangkat lunak inti berputar file log setiap jam atau setelah mereka 1.024 KB. Akibatnya, komponen pengelola log mengunggah log hanya setelahAWS IoT GreengrassPerangkat lunak inti atau komponen Greengrass menulis lebih dari 1.024 KB log. Anda dapat mengkonfigurasi batas ukuran file log yang lebih rendah untuk menyebabkan file log untuk memutar lebih sering. Hal ini menyebabkan komponen pengelola log untuk meng-upload log CloudWatch Log lebih sering.

    Komponen pengelola log juga mengunggah log baru secara berkala. Secara default, komponen pengelola log mengunggah log baru setiap 5 menit. Anda dapat mengonfigurasi interval unggahan yang lebih rendah, sehingga komponen pengelola log mengunggah log ke CloudWatch Log lebih sering.

    Jika Anda perlu mengamati log secara real time, pertimbangkan untuk menggunakanLog sistem file.

  • Clock skew

    Komponen pengelola log menggunakan proses penandatanganan Signature Version 4 standar untuk membuat permintaan API CloudWatch Log. Jika waktu sistem pada perangkat core tidak sinkron lebih dari 15 menit, maka CloudWatch Log menolak permintaan. Untuk informasi selengkapnya, lihatProses penandatanganan Signature Version 4di dalamAWSReferensi Umum.

Akses log layanan sistem

Jika AndakonfigurasikanAWS IoT GreengrassPerangkat lunak inti sebagai layanan sistem, Anda dapat melihat log layanan sistem untuk memecahkan masalah, seperti perangkat lunak yang gagal untuk memulai.

Untuk melihat log layanan sistem (CLI)

  1. Jalankan perintah berikut untuk menampilkanAWS IoT GreengrassLog layanan sistem perangkat lunak inti.

    Linux or Unix (systemd)
    sudo journalctl -u greengrass.service
    Windows Command Prompt (CMD)
    type C:\greengrass\v2\logs\greengrass.wrapper.log
    PowerShell
    gc C:\greengrass\v2\logs\greengrass.wrapper.log
  2. Pada perangkat Windows,AWS IoT GreengrassPerangkat lunak inti membuat file log terpisah untuk kesalahan layanan sistem. Jalankan perintah berikut ini untuk menampilkan log kesalahan layanan sistem.

    Windows Command Prompt (CMD)
    type C:\greengrass\v2\logs\greengrass.err.log
    PowerShell
    gc C:\greengrass\v2\logs\greengrass.err.log

Pada perangkat Windows, Anda juga dapat menggunakanOrang yang Melihat Acaraaplikasi untuk melihat log layanan sistem.

Untuk melihat log layanan Windows (Penampil Acara)

  1. BukaOrang yang Melihat Acaraaplikasi.

  2. PilihLog Windowsuntuk mengembangkannya.

  3. MemiilihAplikasiuntuk melihat log layanan aplikasi.

  4. Temukan dan buka log acara yangSumberadalahgreengrass.

Aktifkan pencatatan CloudWatch Beberapa catatan

Anda dapat menyebarkanKomponen manajer loguntuk mengkonfigurasi perangkat inti untuk menulis log CloudWatch Log. Anda dapat mengaktifkan CloudWatch Log untukAWS IoT GreengrassLog perangkat lunak inti, dan Anda dapat mengaktifkan CloudWatch Log untuk komponen Greengrass tertentu.

catatan

Peran pertukaran token perangkat inti Greengrass harus memungkinkan perangkat inti untuk menulis CloudWatch Log, seperti yang ditunjukkan dalam kebijakan IAM contoh berikut. Jika AndamenginstalAWS IoT GreengrassPerangkat lunak inti dengan penyediaan sumber daya otomatis, perangkat inti Anda memiliki izin ini.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogStreams" ], "Effect": "Allow", "Resource": "arn:aws:logs:*:*:*" } ] }

Untuk mengkonfigurasi perangkat inti untuk menulisAWS IoT GreengrassLog perangkat lunak inti CloudWatch Log,buat penerapanyang menentukan pemutakhiran konfigurasi yang menetapkanuploadToCloudWatchkepadatrueuntukaws.greengrass.LogManagerkomponen.AWS IoT Greengrass Log perangkat lunak inti mencakup log untukInti Greengrassdankomponen.

{ "logsUploaderConfiguration": { "systemLogsConfiguration": { "uploadToCloudWatch": "true" } } }

Untuk mengkonfigurasi perangkat inti untuk menulis log komponen Greengrass ke CloudWatch Log,buat penerapanyang menentukan pembaruan konfigurasi yang menambahkan komponen ke daftar konfigurasi logging komponen. Ketika Anda menambahkan komponen ke daftar ini, komponen pengelola log menulis lognya CloudWatch Log. Log komponen termasuk log untukkomponen generik dan komponen Lambda.

{ "logsUploaderConfiguration": { "componentLogsConfigurationMap": { "com.example.HelloWorld": { } } } }

Saat Anda menerapkan komponen pengelola log, Anda juga dapat mengonfigurasi batas ruang disk dan apakah perangkat inti menghapus file log setelah menulisnya CloudWatch Log. Untuk informasi selengkapnya, lihat Konfigurasi pencatatan untuk AWS IoT Greengrass.

Konfigurasi pencatatan untuk AWS IoT Greengrass

Anda dapat mengkonfigurasi opsi berikut untuk menyesuaikan logging untuk perangkat inti Greengrass. Untuk mengkonfigurasi opsi ini,buat penerapanyang menentukan pembaruan konfigurasi ke inti Greengrass atau komponen pengelola log.

  • Menulis log CloudWatch Beberapa catatan

    Untuk memecahkan masalah perangkat inti dari jarak jauh, Anda dapat mengonfigurasi perangkat inti untuk menulisAWS IoT GreengrassLog perangkat lunak dan komponen CloudWatch Log. Untuk melakukannya, deploy dan konfigurasikanKomponen manajer log. Untuk informasi selengkapnya, lihat Aktifkan pencatatan CloudWatch Beberapa catatan.

  • Menghapus berkas log yang diunggah

    Untuk mengurangi penggunaan ruang disk, Anda dapat mengkonfigurasi perangkat inti untuk menghapus file log setelah menulis file log ke CloudWatch Log. Untuk informasi lebih lanjut, lihat komponen pengelola logdeleteLogFileAfterCloudUploadparameter, yang dapat Anda tentukanAWS IoT GreengrassLog perangkat lunak intidanlog komponen.

  • Batas ruang disk

    Untuk membatasi penggunaan ruang disk, Anda dapat mengonfigurasi ruang disk maksimum untuk setiap log, termasuk file log yang diputar, pada perangkat inti. Misalnya, Anda dapat mengkonfigurasi ruang disk gabungan maksimum untukgreengrass.logdan diputargreengrass.logfile. Untuk informasi lebih lanjut, lihat, komponen nukleus Greengrasslogging.totalLogsSizeKBparameter dan komponen pengelola logdiskSpaceLimitparameter, yang dapat Anda tentukanAWS IoT GreengrassLog perangkat lunak intidanlog komponen.

  • Batas ukuran file

    Anda dapat mengonfigurasi ukuran file maksimum untuk setiap file log. Setelah file log melebihi batas ukuran file ini,AWS IoT GreengrassPerangkat lunak inti menciptakan file log baru. YangKomponen manajer logmenulis hanya file log yang diputar ke CloudWatch Log, sehingga Anda dapat menentukan batas ukuran file yang lebih rendah untuk menulis log CloudWatch Log lebih sering. Untuk informasi lebih lanjut, lihat, komponen nukleus Greengrassparameter batas ukuran file log(logging.fileSizeKB).

  • Tingkat log

    Anda dapat mengkonfigurasi tingkat log minimum yang ditulis oleh komponen nukleus Greengrass ke log sistem file. Misalnya, Anda dapat menentukanDEBUGlog tingkat untuk membantu dengan pemecahan masalah, atau Anda mungkin menentukanERRORtingkat log untuk mengurangi jumlah log bahwa perangkat inti menciptakan. Untuk informasi lebih lanjut, lihat, komponen nukleus GreengrassParameter tingkat log(logging.level).

    Anda juga dapat mengkonfigurasi tingkat log minimum yang ditulis oleh komponen pengelola log CloudWatch Log. Misalnya, Anda dapat menentukan tingkat log yang lebih tinggi untuk mengurangibiaya pencatatan. Untuk informasi lebih lanjut, lihat komponen pengelola logminimumLogLevelparameter, yang dapat Anda tentukanAWS IoT GreengrassLog perangkat lunak intidanlog komponen.

  • Interval untuk memeriksa log untuk menulis CloudWatch Beberapa catatan

    Untuk menambah atau mengurangi seberapa sering komponen pengelola log menulis log ke CloudWatch Log, Anda dapat mengkonfigurasi interval di mana ia memeriksa file log baru untuk menulis. Misalnya, Anda mungkin menentukan interval yang lebih rendah untuk melihat log masuk CloudWatch Log lebih cepat dari yang Anda lakukan dengan interval 5 menit default. Anda mungkin menentukan interval yang lebih tinggi untuk mengurangi biaya, karena komponen pengelola log mengelompokkan file log menjadi lebih sedikit permintaan. Untuk informasi lebih lanjut, lihat komponen pengelola logParameter interval(periodicUploadIntervalSec).

  • Format log

    Anda dapat memilihAWS IoT GreengrassPerangkat lunak inti menulis log dalam teks atau format JSON. Pilih format teks jika Anda membaca log, atau pilih format JSON jika Anda menggunakan aplikasi untuk membaca atau mengurai log. Untuk informasi lebih lanjut, lihat, komponen nukleus GreengrassParameter format log(logging.format).

  • Folder log sistem file lokal

    Anda dapat mengubah folder log dari/greengrass/v2/logske folder lain pada perangkat inti. Untuk informasi lebih lanjut, lihat, komponen nukleus GreengrassParameter direktori(logging.outputDirectory).

Log AWS CloudTrail

AWS IoT Greengrassterintegrasi denganAWS CloudTrail, layanan yang menyediakan catatan tindakan yang diambil oleh pengguna, peran, atauLayanan AWSdiAWS IoT Greengrass. Untuk informasi selengkapnya, lihat Catat panggilan API AWS IoT Greengrass V2 dengan AWS CloudTrail.