Windows 環境下で mosquitto Broker のログをファイル出力する

MQTT

だいぶ前ですが、Windows10 にて mosquitto ブローカーのログをファイル出力する方法を探りました。

mosquitto でブローカーのログをファイル出力する方法(Windows10 にて)
主題の通り、Windows10 の環境にて、 mosquitto のブローカーのログをファイルに出力する方法です。公式な手順(ただし Windows10 ではうまくいかない・・・)まず、公式にログ出力に関する設定方法が書かれています。...

mosquitto にはブローカーのログをファイル出力する機能があるのですが、現状 Windows 環境下においては対応していないという状況です。
前回は「全メッセージを受信するクライアントを立ち上げて、そのクライアントがメッセージをファイル出力」という手法でやってみましたが、
今回は本当にブローカーのログをファイル出力する方法です。

やりたいこと

mosquitto は Windows 上ではログをファイル出力できないので、なんとかして Windows 上でもログファイル出力できるようにします。

解決方法

コマンドプロンプトのリダイレクトを使って実現します。

先に結論ですが、コマンドプロンプトにて以下を実行することでファイル出力できました。
(この場合は、test.txt に出力されます)

mosquitto -v 2> test.txt

解説

mosquitto -v でコマンドプロンプトにmosquittoの動作が詳細出力されます。
これを「test.txt」リダイレクトすることでファイル出力するようにしています。

ポイントとしては 2> です。
リダイレクトする方法として、標準エラー出力をリダイレクトするようにしています。
普通に > でリダイレクトした場合は標準出力をリダイレクトすることになるのですが、mosquitto ではこれがうまくいきませんでした。
どうやら mosquitto の出力は標準エラー出力らしく、2> にすることでうまくいきました。

コメント

タイトルとURLをコピーしました