Elixir:
Ghi vào lỗi chuẩn

Cách thực hiện:

Để ghi vào stderr trong Elixir, sử dụng IO.warn/1 hoặc IO.puts/2. Dưới đây là cách:

# Ghi vào stderr với IO.warn
IO.warn("Có lỗi xảy ra!")

# Ghi vào stderr với IO.puts
IO.puts(:stderr, "Thông tin lỗi chi tiết.")

Mẫu đầu ra tới stderr:

Có lỗi xảy ra!
Thông tin lỗi chi tiết.

Sâu xa hơn

Trong lịch sử, việc tách stderr khỏi stdout cho phép người dùng Unix xử lý thông điệp lỗi một cách rõ ràng so với đầu ra thường, có thể đặc biệt hữu ích khi chuyển hướng đầu ra sang một tệp hoặc một chương trình khác.

Elixir, như một ngôn ngữ hiện đại, duy trì truyền thống này. Trong khi IO.puts/1 mặc định là stdout, việc truyền atom :stderr làm đối số đầu tiên chuyển đổi dòng. IO.warn/1 viết vào stderr mặc định, phù hợp với thông báo cảnh báo.

Những phương án khác cho việc ghi nhật ký lỗi trong Elixir có thể bao gồm mô-đun Logger cho một cách tiếp cận có cấu trúc hơn. Điều này có thể được cấu hình để ghi các nhật ký ở các cấp độ khác nhau vào stderr.

Bên dưới góc độ kỹ thuật, các hàm IO của Elixir dành cho stderr và stdout tương tác với mô-đun :io của Erlang, mô-đun này lại làm việc với các dòng I/O của hệ điều hành cơ bản.

Xem thêm