Saya seorang pengembang di perusahaan yang produknya digunakan di luar negeri. Ketika tim dukungan datang menanyakan tentang definisi masalah, satu-satunya alat saya untuk diagnosis adalah file log saya dan salinan database pelanggan. Menggunakan database dan lingkungan pengembangan saya, saya memiliki kesempatan untuk mereproduksi kasus yang salah, karena saya mencatat data yang masuk ke modul saya dan tindakan terkait. Jika saya bisa mereproduksi kesalahan dengan bantuan data yang saya kumpulkan, maka saya bisa memperbaikinya dengan debugging. Jika saya tidak memiliki file log, maka saya harus bergantung pada deskripsi pelanggan atau tim pendukung tentang apa yang terjadi dalam kasus apa (yang memiliki peluang besar untuk menyesatkan).
Kedua, logging memberi saya kesempatan untuk mendeteksi kemacetan modul saya di situs yang dikerahkan, karena saya mencatat tanggal & waktu tindakan tertentu dan kemudian saya bisa melihat di mana tindakan menghabiskan banyak waktu.
Selain itu, anggaplah solusi kami terdiri dari 6 modul dan saya melihat log kesalahan dalam file log saya tentang batas waktu basis data. Jika kesalahan ini masuk 5 modul lain juga, maka kemungkinan ini adalah masalah terkait SQL server menjadi lebih besar. Jika ini hanya dicatat dalam modul saya, maka probabilitas bahwa pertanyaan saya bermasalah semakin besar. Saya pikir hal-hal semacam ini adalah indikator yang berguna.
Tentang jenis data apa yang saya lihat di file log saya tergantung pada konfigurasi level log. Jika ini adalah produk baru, kami mengatur level log ke "Semua" untuk mengumpulkan data sebanyak mungkin. Tetapi ketika kami meningkatkan produk, kami mungkin lebih suka menjaga level log pada "Kesalahan" hanya mencatat kesalahan, tetapi tidak pada tingkat informasi log, dll ...