前回の投稿「ESP32をJavascriptでLチカする」に引き続き、ESP32でJavascriptを動かします。
今回は、デバッグログをリモートで参照できるようにします。
ESP32でJavascriptを動かせるようになったのはいいですが、console.logの出力は相変わらずSerial出力でした。
リモートで確認できるように、log.ioを使います。
log.ioについては、以下を参照してください。
log.ioでログをブラウザでリアルタイムモニタリングする
ソースコードもろもろは、前回同様以下に上げてあります。
随時、修正、拡張しています。
poruruba/QuickJS_ESP32
#log.ioサーバを立ち上げる
以下の記事を参考に、log.ioサーバを立ち上げます。
log.ioでログをブラウザでリアルタイムモニタリングする
npm install -g log.io
mkdir ~/.log.io
vi ~/.log.io/server.json
log.io-server
#log.ioにコンソール出力する
main.cppの以下の部分に立ち上げたlog.ioのサーバとポート番号を指定します。
const char *LOGIO_HOST = "【Log.ioのホスト名】"; // log.ioのホスト名
const unsigned short LOGIO_PORT = 6689; // log.ioのポート番号
次に、log.ioをブラウザから開きます。
あとは、Javascriptで以下のように有効化して、console.logで出力すると、その内容がlog.ioサーバに送信されます。
console.enableLogio(true);
console.log("hello”);
こんな感じで、ログが表示されます。
stream名はMACアドレスにしてあります。
console.logではなく、console.infoなどで呼び出すと、source名がinfoなどで届きます。
これで、わざわさESP32を仮想COMポートなどとしてつなぐ必要がなくなります。
#(追加)SDの追加
log.ioとは関係ありませんが、ついでに、SDにも対応しておきました。JavascriptからSDを操作できるようにしておきました。
APIは以下を参照してください。
以上