[ว่าด้วยเรื่อง LOG # Logstash อ่าน เขียน ดู #แบ่งปัน]


ท่านใดที่กำลังประสบปัญหาเหมือนผมคือ โปรแกรม error แล้วไม่รู้ว่า "มึงเป็นอะไร" นั่นแสดงว่าการเขียนโค๊ตมีปัญหาและ ผมจะไล่เรียง Step debug ของตัวเองให้ฟังตั้งแต่เริ่มทำงานแรก ๆ เอาล่ะ เกริ่นก่อนว่าผมเป็นสาย php ทำด้ายเว็บ สมัยเรียนผมไม่เคยได้ยิน F12 การดู error ทั้ง javascript error php error reponse code, header reponse อื่น ๆ ผมจะเห็นก็ต่อเมื่อรันโค๊ตแล้วมันแสดงบรรทัดขึ้นมาว่าเป็นอะไร และเมื่อเริ่มมาทำงานก็ได้รู้จักกับ firebug ไว้หา bug มันก็ดีมาก ๆครับสำหรับคนทำ Font end แต่ตอนนี้บริบทผมเปลี่ยนไป ผันตัวเองมาทำ API เสียส่วนใหญ่ บางครั้งก็ย้ายไปทำหน้า Font บ้าง แน่นอนว่าการทำ หน้า Font เป็นงานที่ลำบากกว่าทำ API ต้องไปต่อยตีกับ TESTER อีกที และก็ไผว้กับคนทำ API ด้วยเช่นเดียวกัน ผมจะยกตัวอย่างการ debug api สมัยแรกให้ฟัง
การ debuggin ทำโดยส่งเมล์ มาดู reponse กับ curl -> แล้วดู reponse เลย แต่ก็ไม่อาจทำให้มันจบ flow มันอยู่ดี การหา bug เลยใช้เวลานานเหี้ย ๆกว่าจะได้ บางครั้งทำอยู่หลายวัน หรือหลายอาทิตย์ แต่ bug ที่หน้ากลัวคือ LOGIC ERROR คือมันคิดคำนวนผิดพลาด ซึ่งเราต้อง make sure ให้ได้เพื่อไป confirm กับหัวหน้าเพื่อทำการแก้ไข จังหวะการแก้นี่ บอกเลยว่าลุ้นมาก ๆ สมัยก่อนไม่ได้ทำ testcase unit test อะไร ความเสี่ยง มีอยู่เยอะพอสมควร แต่หากถูกบีบด้วยเวลา ทุกคนก็มีความเห็นเดียวกัน (เหมือนในหนัง ดาวอังคาร) ไม่มีผิด เออลืมไปอีกวิธีหนึ่งแต่ก่อนที่ดู log คือเดินไปบอก infra ให้เปิด tail log ให้ดูว่า error อะไร พอได้จับทางง่ายขึ้นหน่อยว่าเกิดขึ้นกับไฟล์อะไรที่ไหน ยังไง แต่ก็ยังคงเป็นแค่ log error ปรกติของ apache ที่ gen ขึ้นมาให้ ไม่ได้มีอะไรที่มากกว่านั้น หาก มันไมได้ error แบบนั้นล่ะ จะทำอย่างไรกันเหล่า ?
มันจะดีกว่าไหม ที่เราจะได้ดูว่า เกิดอะไรขึ้น จากไหนไปไหน ขั้นตอนไหน อย่างไร ที่ไหน เห็นได้ทั้งประโยคบอกเล่า แบบว่า " สถานะ ok 200 ปลอดภัยดี" หรือแบบอื่น ๆ แจ้งเตือนเราทันท่วงที ลองเอานี่ไปใช้ดูครับ
https://github.com/elastic/logstash
log จัดการง่าย ดูง่าย ด้วยมือคุณ "เลิกไปถาม infra ได้แล้วน่ะ "
Share on Google Plus

About maxcom

This is a short description in the author block about the author. You edit it by entering text in the "Biographical Info" field in the user admin panel.
    Blogger Comment
    Facebook Comment

0 ความคิดเห็น:

แสดงความคิดเห็น