Elixir:
การเขียนไปยังข้อผิดพลาดมาตรฐาน
วิธีการ:
ใน Elixir, คุณสามารถใช้ฟังก์ชันในโมดูล IO
เช่น IO.puts/2
และ IO.warn/2
เพื่อเขียนข้อความไปยังข้อผิดพลาดมาตรฐาน:
# เขียนข้อความง่ายๆ ไปยัง stderr
IO.puts(:stderr, "Error: Something went wrong!")
# ใช้ IO.warn ซึ่งมีความหมายมากกว่าสำหรับการเตือน/ข้อผิดพลาด
IO.warn("Warning: You are about to exceed the limit!")
ผลลัพธ์ตัวอย่างในเทอร์มินัลสำหรับ IO.puts/2
:
Error: Something went wrong!
สำหรับ IO.warn/2
, ผลลัพธ์จะคล้ายกัน แต่ IO.warn/2
ออกแบบมาสำหรับการเตือนโดยเฉพาะ และอาจรวมการจัดรูปแบบหรือพฤติกรรมเพิ่มเติมในเวอร์ชัน Elixir อนาคต
ใช้ไลบรารีบุคคลที่สาม
แม้ว่าไลบรารีมาตรฐานของ Elixir มักเพียงพอสำหรับการจัดการกับการแสดงผลข้อผิดพลาดมาตรฐาน คุณอาจพบว่าไลบรารีเช่น Logger
เป็นประโยชน์สำหรับแอปพลิเคชันที่ซับซ้อนมากขึ้นหรือสำหรับการกำหนดค่าระดับประเภทบันทึกและการแสดงผลที่แตกต่างกัน
ตัวอย่างการใช้ Logger
เพื่อแสดงข้อความข้อผิดพลาด:
require Logger
# กำหนดค่า Logger เพื่อแสดงผลไปยัง stderr
Logger.configure_backend(:console, device: :stderr)
# เขียนข้อความข้อผิดพลาด
Logger.error("Error: Failed to connect to the database.")
การตั้งค่านี้นำผลลัพธ์ของ Logger
ไปสู่ stderr โดยเฉพาะ ซึ่งเป็นประโยชน์สำหรับการแยกการบันทึกข้อผิดพลาดออกจากข้อความบันทึกมาตรฐาน