勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

JavaScriptにて「loglevel」ライブラリを利用して環境及びレベルによりログを出し分けする方法

  JavaScript

JavaScriptにて何らかの確認の際にconsole.logを使うことが多い。ただ、これを本番環境で出しっぱなしという訳にもいかないので、テスト・本番環境によってコメントアウトする必要が出てくるがこれが面倒くさい。「loglevel」ライブラリを使うことで解決できる模様。以下に利用方法をメモ。

 

loglevel

GitHub

https://github.com/pimterry/loglevel

CDN

CDNで使う場合は以下を記述する。

<script src="https://cdnjs.cloudflare.com/ajax/libs/loglevel/1.9.1/loglevel.min.js"></script>

異なるバージョンを使用したい場合は以下から探す。

https://cdnjs.com/libraries/loglevel

 

利用方法

ソースコード

<script src="https://cdnjs.cloudflare.com/ajax/libs/loglevel/1.9.1/loglevel.min.js"></script>
<script>
log.setLevel('debug');
const msg = 'ログメッセージ';
log.trace(msg);
log.debug(msg);
log.info(msg);
log.warn(msg);
log.error(msg);
</script>

ログレベルの指定

log.setLevel()に引数でログレベルを指定することで、指定したレベル以下のものを出力できる。

上記ソースコードの場合だと、ログレベルがdebug以下(debug / info / warn / error)のものがコンソールログに出力される。

テスト環境の場合はログレベルをdebugに、本番環境の場合はerrorに指定することで出し分けが可能。

尚、errorすらも出力したくない場合はsilentを指定すること。

 - JavaScript

  関連記事

JavaScriptで小数の計算をする際にずれ(誤差)を無くす方法(decimal.js)

JavaScriptで小数の計算をすると値がずれる(誤差が発生する)ことがあった ...

JavaScriptでオブジェクトをzlib圧縮してCookieに保存できる「zcookies」ライブラリの利用方法

あるシステムでCookieを保存している部分があった。ただ、日本語を保存している ...

JavaScriptでランダムなカラーコードを生成する「RandomColor」ライブラリの利用方法

先日PHPでランダムなカラーコードを生成する「RandomColor.php」ラ ...

ブラウザ上で画像の切り抜き等編集を行う方法(Cropper.js)

あるサイトで画像をアップロードし、その画像に対してブラウザ上で切り抜き等トリミン ...

Dexie.jsを利用してIndexedDBを取り扱う方法

IndexedDBを用いて色々するという案件を見かけたが、そもそもIndexed ...