Rumah >pembangunan bahagian belakang >tutorial php >Mengapa Log Pertanyaan Laravel 5 Saya Kosong?

Mengapa Log Pertanyaan Laravel 5 Saya Kosong?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-13 05:54:02462semak imbas

Why is My Laravel 5 Query Log Empty?

Misteri Log Masuk Pertanyaan Kosong Laravel 5: DB::getQueryLog() Didedahkan

Apabila cuba mendapatkan semula log pertanyaan menggunakan DB ::getQueryLog(), pembangun mungkin menghadapi hasil yang tidak dijangka: tatasusunan kosong. Tingkah laku yang membingungkan ini berpunca daripada pengelogan pertanyaan yang dilumpuhkan dalam Laravel 5 secara lalai.

Mendayakan Pengelogan Pertanyaan

Untuk mengakses log pertanyaan, anda perlu mendayakannya secara eksplisit:

  • Memanggil DB::enableQueryLog(): Ini mengaktifkan pengelogan pertanyaan untuk semua sambungan DB.
  • Mendaftarkan Pendengar Acara: Daftar a pendengar untuk menerima maklumat terperinci tentang setiap pertanyaan yang dilaksanakan.

Pertimbangan

  1. Berbilang Sambungan DB: Jika aplikasi anda menggunakan berbilang sambungan pangkalan data, nyatakan sambungan untuk log, cth., DB::connection('my_connection')->enableQueryLog().
  2. Mendayakan Lokasi: Tentukan lokasi yang paling sesuai untuk mendayakan pertanyaan pembalakan. Untuk permintaan HTTP, pertimbangkan perisian tengah; untuk arahan CLI, pendengar acara artisan.start.
  3. Penggunaan Memori: Berhati-hati tentang penggunaan memori yang berpotensi apabila menyimpan pertanyaan dalam ingatan. Untuk tujuan penyahpepijatan, pertimbangkan untuk mendayakan pengelogan hanya dalam persekitaran pembangunan.

Mendapatkan Log Pertanyaan

Setelah didayakan, anda boleh mendapatkan semula log pertanyaan dengan memanggil DB:: getQueryLog(). Ini mengembalikan tatasusunan yang mengandungi data berikut:

  • Pernyataan SQL
  • Pengikatan (jika ada)
  • Masa pelaksanaan

Sumber Tambahan

Untuk maklumat lanjut, rujuk dokumentasi Laravel: https://laravel.com/docs/5.0/database#query-logging

Atas ialah kandungan terperinci Mengapa Log Pertanyaan Laravel 5 Saya Kosong?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn