複数のライブラリを使用する Apps スクリプトのプロジェクトがあります。このプロジェクトでは、より複雑なロガー (ログ レベル、色分け) が必要だったので、Google ドキュメントに出力するものを作成しました。すべてのライブラリにロガーを個別にインポートするときに、出力をすぐにGoogleドキュメントに出力すると、すべてがうまくいきます。ただし、多くのログを記録すると、ログを記録しない場合よりもはるかに時間がかかることに気付きました。そのため、メイン スクリプトが終了したときに、最後にすべての出力を一度に書き込む方法を探しています。
これには、次のいずれかが必要です。
- ロギング ライブラリを一度 (メイン ファイルで) 定義し、接続されたライブラリで何らかの方法でこれにアクセスできること。ただし、ライブラリ内からメイン プロジェクトの閉鎖を取得する方法が見つからないようです。
- ある種のシングルトン ロガー オブジェクト。ライブラリでこれが可能かどうかはわかりませんが、どちらの方法でも理解できません。
- 私のニーズに合わせて組み込みのロガーを拡張していますが、よくわかりません...
私のプロジェクトは次のようになります。
主なプロジェクト
- ライブラリー 1
- ライブラリ 2
- 図書館 3
- 図書館 4
これが現在のロガーの使用方法です。
var logger = new BetterLogger(/* logging level */);
logger.warn('this is a warning');
ありがとう!