Anda dapat menulis log ke Cloud Logging dari aplikasi PHP secara langsung menggunakan library Cloud Logging untuk PHP.
Sebelum memulai
- Login ke akun Google Cloud Anda. Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru juga mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
-
Di konsol Google Cloud, pada halaman pemilih project, pilih atau buat project Google Cloud.
-
Pastikan penagihan telah diaktifkan untuk project Google Cloud Anda.
-
Aktifkan Cloud Logging API.
-
Di konsol Google Cloud, pada halaman pemilih project, pilih atau buat project Google Cloud.
-
Pastikan penagihan telah diaktifkan untuk project Google Cloud Anda.
-
Aktifkan Cloud Logging API.
Menginstal library Cloud Logging untuk PHP
Library Cloud Logging untuk PHP menyediakan implementasi logger PSR-3 sederhana untuk framework web PHP.
Untuk menulis log dari aplikasi Anda, tambahkan library Cloud Logging untuk PHP ke composer.json Anda:
composer require google/cloud-logging
Membuat pencatat log PSR-3
Gunakan kode berikut untuk membuat logger PSR-3:
Mengaktifkan opsi pengelompokan
Logger PSR-3 mengirim log secara sinkron. Artinya, setiap kali Anda mengeluarkan log, tindakan tersebut akan menambahkan latensi RPC ke permintaan pengguna. Terlebih jika Anda memunculkan beberapa log dalam satu permintaan, latensi tambahan akan menjadi signifikan. Sebaiknya hindari hal ini.
Kode berikut membuat logger PSR-3 yang akan mengelompokkan beberapa log ke dalam satu panggilan RPC:
Secara default, pencatat log ini mengelompokkan log dalam satu proses. Di lingkungan fleksibel App Engine, Anda dapat mengonfigurasi library Cloud Logging untuk PHP guna mendapatkan throughput yang lebih tinggi dan latensi yang lebih rendah. Untuk mengetahui detailnya, lihat Mengonfigurasi daemon logging.
Mengonfigurasi library Cloud Logging untuk PHP
Anda dapat menyesuaikan perilaku library Cloud Logging untuk PHP. Lihat dokumen konfigurasi untuk mengetahui daftar opsi konfigurasi yang memungkinkan.
Menggunakan logger PSR-3
Setelah logger dibuat, Anda dapat menggunakan logger di aplikasi:
Untuk mengetahui informasi lebih lanjut tentang penginstalan, lihat dokumentasi untuk library Cloud Logging untuk PHP. Anda juga dapat melaporkan masalah menggunakan issue tracker.
Menulis log dengan library klien Cloud Logging
Untuk mengetahui informasi tentang cara menggunakan library klien Cloud Logging untuk PHP secara langsung, lihat Library Klien Cloud Logging.
Menjalankan di Google Cloud
Agar aplikasi dapat menulis log menggunakan library Cloud Logging untuk PHP, akun layanan untuk resource yang mendasarinya harus memiliki peran Logs Writer (roles/logging.logWriter
) IAM.
Sebagian besar lingkungan Google Cloud secara otomatis mengonfigurasi akun layanan default untuk memiliki peran ini.
App Engine
Cloud Logging diaktifkan secara otomatis untuk App Engine, dan akun layanan default aplikasi Anda memiliki izin IAM secara default untuk menulis entri log.
Untuk informasi selengkapnya, lihat Menulis dan melihat log.
Namun, sebaiknya gunakan logger PSR-3 yang otomatis menambahkan metadata ke log sehingga log aplikasi Anda berkorelasi dengan log permintaan.
Mengonfigurasi daemon untuk lingkungan fleksibel App Engine
Di lingkungan fleksibel App Engine, Anda dapat mengonfigurasi library Cloud Logging untuk PHP agar menggunakan program daemon eksternal untuk memaksimalkan throughput log dan meminimalkan latensi aplikasi. Untuk mengaktifkan fitur ini,
tambahkan baris berikut ke bagian runtime_config
di app.yaml
:
Google Kubernetes Engine (GKE)
GKE otomatis memberikan peran IAM
Logs Writer (roles/logging.logWriter
) ke akun layanan default.
Jika Anda menggunakan Workload Identity dengan akun layanan default ini untuk memungkinkan beban kerja mengakses Google Cloud API tertentu, konfigurasi tambahan tidak diperlukan.
Namun, jika Anda menggunakan Workload Identity dengan akun layanan IAM kustom, pastikan bahwa akun layanan kustom memiliki peran Penulis Log (roles/logging.logWriter
).
Jika diperlukan, Anda juga dapat menggunakan perintah berikut untuk menambahkan cakupan akses logging.write
saat membuat cluster:
gcloud container clusters create example-cluster-name \
--scopes https://www.googleapis.com/auth/logging.write
Compute Engine
Saat menggunakan instance VM Compute Engine, tambahkan cakupan akses cloud-platform
ke setiap instance. Saat membuat instance baru melalui Google Cloud Console, Anda dapat melakukannya di bagian Identity and API access pada panel Create Instance. Gunakan akun layanan default Compute Engine atau akun layanan lain pilihan Anda, lalu pilih Izinkan akses penuh ke semua Cloud API di bagian Identitas dan akses API. Apa pun akun layanan yang Anda pilih, pastikan akun tersebut telah diberi peran Penulis Log di bagian IAM & Admin di Konsol Google Cloud.
Menjalankan secara lokal dan di tempat lain
Agar dapat menggunakan library Cloud Logging untuk PHP di luar Google Cloud, termasuk menjalankan library di workstation Anda sendiri, di komputer pusat data, atau di instance VM penyedia cloud lain, Anda harus memasukkan project ID Google Cloud dan kredensial akun layanan yang sesuai secara langsung ke library Cloud Logging untuk PHP.
Untuk akun layanan yang ada, lakukan hal berikut:
Berikan peran IAM Logs Writer (
roles/logging.logWriter
) ke akun layanan tersebut. Untuk mengetahui informasi selengkapnya tentang peran IAM, lihat Kontrol akses.
Jika Anda tidak memiliki akun layanan, buat akun layanan. Untuk mengetahui informasi tentang proses ini, lihat Membuat akun layanan.
Untuk mengetahui informasi umum tentang metode yang dapat Anda gunakan untuk mengautentikasi, lihat Terminologi: akun layanan.
Melihat log
Di panel navigasi konsol Google Cloud, pilih Logging, lalu pilih Logs Explorer:
Di Logs Explorer, Anda harus menentukan satu atau beberapa resource, tetapi pemilihan resource mungkin tidak jelas. Berikut beberapa tips untuk membantu Anda memulai:
Jika Anda men-deploy aplikasi ke App Engine atau menggunakan library khusus App Engine, tetapkan resource ke Aplikasi GAE.
Jika Anda men-deploy aplikasi di Compute Engine, tetapkan resource ke Instance VM GTFS.
Jika Anda men-deploy aplikasi di Google Kubernetes Engine, konfigurasi logging cluster akan menentukan jenis resource entri log. Untuk diskusi mendetail tentang solusi Kemampuan Observabilitas Google Cloud Lama dan Kemampuan Observasi Google Cloud, serta pengaruh opsi tersebut terhadap jenis resource, lihat Bermigrasi ke Google Cloud untuk Kemampuan Observasi Kubernetes Monitoring.
Jika aplikasi Anda menggunakan Cloud Logging API secara langsung, resource-nya bergantung pada API dan konfigurasi Anda. Misalnya, dalam aplikasi, Anda dapat menetapkan resource atau menggunakan resource default.
Jika Anda tidak melihat log apa pun di Logs Explorer, untuk melihat semua entri log, beralihlah ke mode kueri lanjutan dan gunakan kueri kosong.
- Untuk beralih ke mode kueri lanjutan, klik menu (▾) di bagian atas Logs Explorer, lalu pilih Convert to advanced filter.
- Hapus konten yang muncul di kotak filter.
- Klik Kirim Filter.
Anda bisa memeriksa masing-masing entri untuk mengidentifikasi resource.
Untuk informasi tambahan, lihat Menggunakan Logs Explorer.