Elixir:
標準エラーへの書き込み
方法:
Elixirでは、IO.puts/2
や IO.warn/2
などのIO
モジュールの関数を使用して、標準エラーにメッセージを書き込むことができます:
# stderrにシンプルなメッセージを書き込む
IO.puts(:stderr, "Error: 何かがうまくいかなかった!")
# 警告/エラーに対してより意味的なIO.warnを使用
IO.warn("警告:限界を超えようとしています!")
IO.puts/2
のターミナルでのサンプル出力:
Error: 何かがうまくいかなかった!
IO.warn/2
の場合、出力は似ていますが、IO.warn/2
は特に警告用に設計されており、将来のElixirバージョンでは追加のフォーマッティングや振る舞いが含まれるかもしれません。
サードパーティのライブラリの使用
標準エラー出力の処理にはElixirの標準ライブラリが通常十分ですが、より複雑なアプリケーションや異なるログレベルや出力を設定するために、Logger
のようなライブラリが便利であることがあります。
エラーメッセージを出力するためにLogger
を使用した例:
require Logger
# Loggerをstderrに出力するように設定
Logger.configure_backend(:console, device: :stderr)
# エラーメッセージを書き込む
Logger.error("Error: データベースに接続できなかった。")
この設定は、Logger
の出力を特にstderrに指示するもので、エラーロギングを標準のログメッセージから分離するのに役立ちます。