+2 vote
log pada laravel saya secara otomatis berubah menjadi root, saya sudah mencoba mengecek task scheduler laravel tapi tidak menemukan apapun untuk memperbaiki ini. mohon bantuannya
dalam Laravel oleh  Kawan Berbageek (160 poin)

2 Jawaban

0 vote
Jawaban terbaik
Saya sudah menemukan jawabannya, di kasus saya, terjadi karena adanya error yang tidak bisa di handle pada cron job yang dieksekusi tiap hari. Lalu, error pada cron job menghasilkan sebuah log file yang mempunyai permission root. Cara saya menyelesaikan ini dengan menghandle cron yang telah dibuat dengan implementasi try and catch
yang lalu oleh  Kawan Berbageek (160 poin)
bisa beri contoh bagaimana implementasi try dan catch untuk handle kasus ini?
Menurut saya ini tidak menyelesaikan masalah, hanya menyembunyikannya saja.  Lalu bagaimana mekanismenya jika ada runtime error? Bagaimana developer bisa tahu? File log itu ada untuk dibaca stack tracenya. Jika ada error tanpa stack trace, bagaimana cara debuggingnya?
+1 vote

Ini biasanya disebabkan ketika ada scheduler (command yang dijalankan secara periodik lewat CLI) dimana user yang menjalankan scheduler tersebut (biasanya root) berbeda dengan user ketika menjalankan web (biasanya www-data atau apache), padahal kedua proses tersebut mengakses file log yang sama. Hasilnya, terjadi perbedaan owner file sehingga memungkinkan terjadinya kasus request lewat web tidak bisa mengakses file log yang sebelumnya sudah dibuat lewat CLI.

Ada 2 cara yang bisa dilakukan:

  1. Menyamakan user
  2. Membedakan log file menjadi 2: cli.log dan web.log. Caranya bisa dilihat di http://id-laravel.com/post/memisah-file-log-aplikasi. Untuk membedakan web atau cli bisa dilihat di https://stackoverflow.com/questions/933367/php-how-to-best-determine-if-the-current-invocation-is-from-cli-or-web-server.
oleh  Kawan Berbageek (680 poin)
Selamat datang di Berbageek! Berbageek adalah tempat berbagi pengetahuan programming, ui/ux design, digital marketing & project management dengan konsep tanya-jawab. Sehingga kita bisa menciptakan solusi lebih cepat dan lebih baik. Berikut adalah rule untuk bertanya:
  1. Jangan duplikasi pertanyaan. Dicari dulu pertanyaan yang serupa.
  2. Buatlah pertanyaan yang generik. Tidak boleh bertanya spesifik menyebutkan nama proyek atau nama perusahaan.