เราสามารถดู log ของ app ที่ deploy บน Heroku ด้วยคำสั่ง

$ heroku logs

แต่หากมีการ deploy application บน Heroku ไว้หลายตัว และต้องการระบุ log ของ application ที่ต้องการ สามารถใช้คำสั่ง

$ heroku logs --app <ชื่อ application>

รูปแบบของการแสดงผล log จะมีรูปแบบดังนี้

  • timestamp source[dyno]: message
  • timestamp : เวลาที่บันทึกข้อมูล
  • source : ข้อมูลสำหรับ dynos application (เช่น web dynos, background workers, cron) และข้อมูลสำหรับ system component (เช่น HTTP router, dyno manager)
  • dyno : ชื่อของ dyno หรือ component ที่ใช้ระบุในรายการ log ยกตัวอย่างเช่น Heroku HTTP router ก็จะระบุเป็น router
  • message : เก็บ/ระบุรายละเอียด ของรายการ log ซึ่ง generate จาก dynos และจะเก็บข้อมูล และแสดงผลเป็นข้อความได้ที่ 10,000 bytes

หากต้องการแสดงผล log ในลักษณะของ realtime log สามารถทำได้โดยการรันคำสั่ง

$ heroku logs --tail

และเมื่อต้องการยกเลิกการแสดง log ให้กดปุ่ม ctrl + c เพื่อหยุดการแสดง log จากคำสั่งด้านบน
log ที่แสดงผลออกมาทางหน้าจอนั้น บางครั้งเราอาจจะต้องการ focus เพียงแค่รายละเอียดบางอย่างเท่านั้น ซึ่งเราสามารถระบุการแสดงผลในลักษณะการกรองเฉพาะสิ่งที่เราต้องการได้
โดยใส่ตัวกรอง --ps และ --source เพื่อระบุการแสดง log ได้ตามที่เราต้องการ
ด้านล่างเป็นตัวอย่างหนึ่งในการกำหนดรูปแบบการแสดง log ตามที่อธิบายมาด้านบนทั้งหมด

ข้อจำกัดในการเก็บ log บน Heroku คือจะเก็บประวัติเพียงแค่ 1500 รายการล่าสุดเท่านั้น แต่หากต้องการเก็บประวัติมากกว่านี้ จำเป็นต้องติดตั้ง loggin add-on เพิ่มเติมครับ

Comments are closed.