Show
Jadi ketika kami menemukan kesalahan dalam kode kami, di mana tepatnya kami dapat menemukannya? . sejalan dengan eksekusi program, di log sistem, atau di alat pemantauan kesalahan seperti Rollbar Kesalahan sebarisSecara default, setiap kali terjadi kesalahan atau pengecualian, PHP mengirimkan pesan kesalahan langsung ke pengguna melalui. Dalam lingkungan baris perintah, ini berarti bahwa kesalahan ditampilkan di terminal. Di lingkungan web, kesalahan dan pengecualian ditampilkan langsung di browser Meskipun perilaku ini berguna untuk men-debug masalah di lingkungan pengembangan, perilaku ini harus dinonaktifkan di lingkungan produksi untuk alasan keamanan. Untuk melakukannya, buka file konfigurasi PHP untuk lingkungan tempat Anda bekerja—biasanya ditemukan di jalur yang terlihat seperti /etc/php/. lingkungan. /php. ini—dan ubah direktif display_errors ke Off
File logMeskipun merender kesalahan ke STDOUT sangat bagus untuk men-debug masalah di lingkungan pengembangan saat terjadi, ini tidak terlalu berguna di lingkungan produksi. Di sinilah log kesalahan berperan. Secara default, PHP tidak mencatat kesalahan apa pun, yang berarti bahwa nilai ini harus ditetapkan secara eksplisit. Untuk melakukannya, buka file konfigurasi PHP yang sama yang dirujuk di atas di editor favorit Anda dan temukan direktif error_log _Ada dua kemungkinan nilai untuk error_log. file log kustom dan syslog. Jika syslog digunakan, maka semua error PHP akan dikirim langsung ke file log sistem default—di Linux, biasanya ini adalah /var/log/syslog. Metode yang lebih mudah dikelola adalah dengan menggunakan file log kustom. Dengan melakukan ini, Anda dapat mengisolasi log aplikasi PHP Anda dari sisa log sistem, yang dapat membuat masalah debug jauh lebih mudah. Masuk LaravelSementara logger sistem default PHP berguna untuk aplikasi yang dipesan lebih dahulu, penting untuk dicatat bahwa banyak kerangka kerja aplikasi menyediakan mekanisme logging bawaan mereka sendiri. Contoh yang bagus dari ini adalah kerangka kerja Laravel. Di Laravel, metode logging dapat diubah dalam opsi log dari file konfigurasi aplikasi—ditemukan di config/app. php
Secara default, Laravel menyimpan satu file log di storage/logs/laravel. masuk ke dalam direktori proyek, daripada opsi error_log yang ditentukan dari konfigurasi PHP global Masuk SymfonyKarena Laravel dibangun di atas Symfony, mereka berbagi mekanisme pencatatan inti yang sama—walaupun konfigurasinya berbeda di antara kedua kerangka kerja tersebut. Masuk ke Symfony dan Laravel keduanya dilakukan menggunakan Monolog, perpustakaan logging PHP pihak ketiga yang dapat digunakan untuk membuat dan menyimpan log dengan berbagai cara. Secara default, log Symfony disimpan di var/log/dev. log dan var/log/prod.log. log di dalam direktori proyek, tergantung pada lingkungan, tetapi default ini dapat diubah dalam file konfigurasi paket Monolog yang ditemukan di config/packages/monolog. php
Seperti apa tampilan log PHP?Jadi, seperti apa sebenarnya log PHP itu? _Singkatnya, garis log di atas dapat dipecah menjadi empat bagian. tanggal, nama host, proses, dan pesan kesalahan. Setiap kali terjadi kesalahan atau pengecualian yang tidak tertangkap muncul, pesan kesalahan dicetak bersama dengan tanggal, nama host, dan metadata proses untuk membantu menunjukkan dengan tepat apa yang terjadi, di mana itu terjadi, dan kapan itu terjadi Primer pada level logPenting untuk dicatat bahwa, di PHP, ada beberapa level log yang dapat digeser atau dinaikkan. Meskipun level log ini ditentukan oleh PHP itu sendiri, memahami apa itu dan artinya adalah langkah penting untuk dapat mendiagnosis masalah saat terjadi Saat display_errors disetel ke Aktif, akan berguna untuk secara eksplisit menyembunyikan dan menampilkan level log tertentu sehingga Anda dapat fokus pada satu tugas pada satu waktu, seperti kesalahan kritis, atau membersihkan peringatan. Ini dapat dicapai dengan menggunakan metode error_reporting bawaan
Metode ini menerima nilai integer yang memberi tahu PHP kesalahan mana yang akan ditampilkan, dan kesalahan mana yang harus diabaikan. Melalui penggunaan operator bitwise (. artinya ATAU, & artinya DAN, dan ~ artinya TIDAK), kita dapat dengan jelas dan mudah menentukan kesalahan mana yang ingin kita lihat Berikut adalah beberapa level log yang paling umum. Untuk informasi lebih lanjut tentang level log (ada beberapa di antaranya), lihat dokumentasi resmi PHP Bagaimana cara mengatur jalur log kesalahan di PHP?Lokasi file error log sendiri bisa diatur secara manual di php. berkas ini . Di server Windows, di IIS, mungkin seperti "'error_log = C. \log_files\php_errors. log'" di Linux mungkin nilai "'/var/log/php_errors.
Bagaimana cara mengaktifkan error logging di PHP ini?Aktifkan Error Logging di php. Jika Anda ingin mengaktifkan PHP error logging di file individual, tambahkan kode ini di bagian atas file PHP. ini_set('display_errors', 1); . Now, you must enable only one statement to parse the log errors in the php.
Bagaimana cara mengatur log di PHP?Menyiapkan logging kesalahan PHP . Temukan php. ini di server Anda Cari baris yang berisi entri error_reporting Pastikan tidak ada titik koma (;) di depan entri Setel entri error_reporting sama dengan tingkat logging yang diinginkan (dibahas selanjutnya) Bagaimana cara mengatur pelaporan kesalahan di PHP?Cara tercepat untuk menampilkan semua kesalahan dan peringatan php adalah dengan menambahkan baris ini ke file kode PHP Anda. ini_set('display_errors', 1); |