Perubahan yang dilakukan:
- Penambahan Debugging dan Verifikasi Storage:
- Menambahkan log detail untuk tracking proses export CSV, termasuk informasi disk, client, account number, period, dan path penyimpanan.
- Mengimplementasikan pembuatan file dummy untuk memverifikasi fungsi storage disk sebelum proses export dijalankan.
- Menambahkan verifikasi keberadaan file setelah proses export selesai untuk memastikan file benar-benar tersimpan di storage.
- Perbaikan Manajemen Path:
- Memastikan seluruh proses pembuatan direktori menggunakan Laravel Storage facade secara konsisten.
- Menghapus dependency pada proses sistem chmod, chown, dan chgrp yang berpotensi menimbulkan masalah portabilitas.
- Menggunakan path absolut dan konsisten untuk menghindari konflik direktori atau kesalahan path relatif.
- Peningkatan Error Handling:
- Menambahkan log error khusus jika storage disk tidak berfungsi dengan baik atau tidak dapat diakses.
- Mengimplementasikan cleanup file dummy setelah proses verifikasi storage selesai.
- Menambahkan informasi log tambahan untuk kebutuhan debugging dan troubleshooting di lingkungan production.
- Optimasi Performa:
- Menggunakan Laravel Storage facade sebagai standar pembuatan direktori dan file untuk efisiensi dan konsistensi.
- Mengurangi overhead dari pemanggilan fungsi sistem operasi yang tidak diperlukan.
- Memastikan fungsionalitas utama tetap berjalan dengan lebih andal tanpa perubahan pada logika bisnis utama.
Tujuan perubahan:
- Memastikan file export statement benar-benar tersimpan dan dapat diakses, tidak hanya tercatat sukses di log.
- Mengatasi masalah di mana proses log mencatat keberhasilan export tetapi file tidak ditemukan di sistem file.
- Meningkatkan reliabilitas sistem export dengan verifikasi berlapis pada proses penyimpanan.
- Menyederhanakan proses penulisan file agar lebih portable, aman, dan mudah di-maintain di berbagai environment.