Log.INFO กับ Log.DEBUG [ปิด]


100

ฉันกำลังพัฒนาโปรแกรมเชิงพาณิชย์ขนาดใหญ่และสับสนระหว่างข้อมูลประเภทที่ฉันต้องการบันทึกด้วย Log.INFO และ Log.DEBUG มีมาตรฐานหรือกฎเกณฑ์เกี่ยวกับข้อความบันทึกแต่ละประเภทหรือไม่?

คำตอบ:


141

ฉันมักจะพยายามใช้มันในลักษณะนี้:

  • การแก้ปัญหา: ข้อมูลที่น่าสนใจสำหรับนักพัฒนาเมื่อพยายามแก้ไขปัญหา
  • ข้อมูล: ข้อมูลที่น่าสนใจสำหรับเจ้าหน้าที่ฝ่ายสนับสนุนที่พยายามหาบริบทของข้อผิดพลาดที่กำหนด
  • คำเตือนถึง FATAL: ปัญหาและข้อผิดพลาดขึ้นอยู่กับระดับความเสียหาย

สามารถเปิดใช้งาน INFO ได้ตลอดเวลาในการผลิตหรือไม่จะมีผลกระทบต่อประสิทธิภาพหรือไม่
pinkpanther

1
ขึ้นอยู่กับ .. (ฉันชอบคำตอบนั้น) ปัจจัยที่คุณต้องคำนึงถึง ได้แก่ 1. จำนวนรายการบันทึกข้อมูล 2. การตั้งค่าการบันทึก (รายการบันทึกของคุณจะสิ้นสุดลงที่ใด) 3. การประมวลผลที่พร้อมใช้งานและพลังงาน io บน ระบบที่เกี่ยวข้อง
nfechner

2
และพึงทราบว่ายิ่งมีเสียงดังมากเท่าไหร่ก็ยิ่งพบปัญหาได้ยากขึ้นเท่านั้น จากplumberjack.blogspot.be/2010/09/… :> เหมือนกันกับปรัชญาของ Unix ซอฟต์แวร์ไม่ควรมีรายละเอียดมากเกินไปยกเว้นเมื่อจำเป็นต้องมีหรือถูกขอให้เป็น (ทำไมฉันไม่สามารถยกมาได้)
axd

41

ดีบัก : ข้อความที่ละเอียดเกี่ยวกับสถานะของโปรแกรมโดยทั่วไปจะใช้สำหรับการดีบัก

ข้อมูล : ข้อความให้ข้อมูลเกี่ยวกับสถานะของโปรแกรมซึ่งแสดงถึงเหตุการณ์ของโปรแกรมหรือการติดตามพฤติกรรม

•คำเตือน : ข้อความที่อธิบายถึงเหตุการณ์หรือสถานะที่อาจเป็นอันตรายในโปรแกรม

ข้อผิดพลาด : ข้อความที่อธิบายข้อผิดพลาดที่ไม่ร้ายแรงในแอปพลิเคชัน ระดับนี้มักใช้สำหรับการบันทึกข้อยกเว้นที่จัดการ

ร้ายแรง : ข้อความที่แสดงถึงเงื่อนไขข้อผิดพลาดที่รุนแรงที่สุดซึ่งถือว่าส่งผลให้โปรแกรมสิ้นสุดลง

พบในhttp://www.beefycode.com/post/Log4Net-Tutorial-pt-1-Getting-Started.aspx


ข้อผิดพลาดที่เกิดจากการป้อนข้อมูลของผู้ใช้ควรถือเป็นคำเตือนหรือข้อผิดพลาดหรือไม่? (ชื่อผู้ใช้หรือรหัสผ่านของ IE ไม่ถูกต้อง)
Stevoisiak

@Stevoisiak จากคำตอบของเขาฉันคิดว่ามันควรจะถือว่าเป็นข้อมูล
aderchox

10

ยังจำได้ว่าทั้งหมดinfo(), error()และdebug()สายการเข้าสู่ระบบให้เอกสารภายในโปรแกรมใด ๆ


ผมคิดว่ามันเป็นจุดที่ดี เช่นlog.info("parse the widget text; ignore contents of 'foo'")ทำหน้าที่เป็นเอกสารที่มีประโยชน์เมื่ออ่านรหัสแม้ว่าจะเป็นคำสั่งบันทึกก็ตาม
สตูว์
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.