در اندروید استودیو باید همیشه در مورد نوع یک لاگ، زمانی که لاگ را به یکی از این شش متد تخصیص میدهیم در نظر بگیریم این است که این کار اجازه میدهد تا خروجی logcat خود را در زمان مناسب فیلتر کنیم. همچنین برای درک اینکه چه زمانی پیام لاگ در اپلیکیشن کامپایل میشود مهم است.
ترتیب logهای قابل استفاده در این کلاس بر اساس اهمیت پیامها از زیاد به کم عبارت است از:
WTF, ERROR, WARN, INFO, DEBUG, VERBOSE
Log.wtf (What a Terrible Failure): از این زمانی استفاده کنید که چیزها به طور وحشتناکی کاملا اشتباه میشوند. وضعیتی که هرگز نباید اتفاق بیفتد را گزارش دهید.
Log.e (Error): زمانی که چیزهای بدی اتفاق میافتد از این لاگ استفاده میشود. از این تگ در مکانهایی مانند داخل عبارات catch استفاده کنید. شما میدانید که یک خطا رخ داده است و بنابراین شما یک خطا را لاگ میکنید. این لاگها همیشه (چه در کامپایل و چه در زمان اجرا) نگه داشته میشوند.
Log.w (Warning): از این زمانی استفاده کنید که به چیزی در حال جریان مشکوک هستید. ممکن است آن را کاملاً خطا در نظر نگیرید اما رفتارهای نامنتظرهای داشته باشد. اساساً از این تگ برای لاگکردن چیزهایی که انتظار وقوع آنها را ندارید اما لزوماً خطا نیستند استفاده کنید. مثلاً هنگام وقوع آن بگویید: «هی، این اتفاق افتاد و عجیب است، ما باید به آن نگاهی بیندازیم.». این لاگها همیشه (چه در کامپایل و چه در زمان اجرا) نگه داشته میشوند.
Log.i (Info): از این برای ارسال اطلاعات مفید به لاگ استفاده کنید. برای مثال: اینکه شما با موفقیت به یک سرور متصل شدید. اساساً از این برای گزارش موفقیتها استفاده کنید. این لاگها همیشه (چه در کامپایل و چه در زمان اجرا) نگه داشته میشوند.
Log.d (Debug): این لاگها کامپایل میشوند اما زمان اجرا نادیده گرفته شده و اجرا نمیشوند. از این برای اهداف اشکالزدایی (debugging) استفاده کنید. اگر میخواهید دستهای از پیامها را چاپ کنید بنابراین شما میتوانید جریان دقیق برنامه خود را لاگ کنید. اگر میخواهید یک لاگ از مقادیر متغیرها داشته باشید، از این استفاده کنید.
Log.v (Verbose): این لاگها هرگز نباید در یک اپلیکیشن کامپایل شود مگر هنگام توسعه اپلیکیشن. زمانی که توسعه پایان یافت و شما آماده انتشار اپلیکیشن خود شدید، باید تمام فراخوانیهای متد verbose را با کامنتکردن آنها یا استفاده از ProGuard حذف کنید تا هر عبارت لاگ verbose را مستقیماً از فایل اجرایی اپلیکیشن خود حذف کنید. اگر به هر دلیلی تصمیم گرفتید تمام چیزهای کوچک در بخش خاصی از اپلیکیشن خود را لاگ کنید، از این تگ استفاده کنید.