Wednesday, March 01, 2006

debug แบบมักง่าย

ปกติถ้าเป็น java เวลาใล่ source code ของ library ต่างๆ
ก็มักจะใช้ debugger ใล่ดู

พอมาใช้ rails, ruby การ debug ก็ใช้วิธีมักง่าย
ก็คือเข้าไปแทรก print statement (puts) ลงใน source
ของ library ตรงๆเลย

วันนี้เรียกใช้งาน web app ตัวหนึ่ง ที่เขียนด้วย rails
เกิด error ประเภท fcgi error
นึกอยู่ตั้งนาน ว่าเกิดอะไรขึ้น
เมื่อก่อนมันยัง run ได้อยู่เลย

โชคดีที่นึกได้ว่า เมื่ออาทิตย์ก่อน เข้าไปแก้ library base.rb ของ ActiveRecord
ก็เลยเข้าไปดู
ปรากฎว่า ลืมเอา puts ที่ใส่ไว้ออก
ไอ้ puts ตัวนั้นก็เลยส่งข้อความออกมากวน fcgi

[Wed Mar 1 15:15:52 2006] [error] [client 127.0.0.1] FastCGI: comm with server
"/Library/WebServer/Documents/snn/dispatch.fcgi" aborted:
error parsing headers: malformed header 'add_conditions SELECT * FROM tags ,'

Related link from Roti

No comments: