基本
デフォルトタイプ
最初から以下タイプが定義されてるので、足りてるならsignale[TYPE]('メッセージ')
の形で即使うだけです。
await
complete
error
debug
fatal
fav
info
note
pause
pending
star
start
success
warn
watch
log
以下はCLIでの使用例です。
const signale = require('signale');
const yargs = yargs.xxx(/* ... */);
// 引数情報表示
signale.info(`Port: ${argv.port}`);
// サーバー起動処理
signale.start('Server'));
// App起動処理
signale.start('App');
// ℹ info Port: 33322
// ▶ start Server
// ▶ start App
カスタムタイプ
Signale
Class をインポートして、自分用に作る必要があります。
const {Signale} = require('signale');
const signale = new Signale({
types: {
sake: {
color: 'green',
badge: '🍶',
label: 'sake'
}
}
});
signale.sake('Kokuryu');
// 🍶 sake Kokuryu
補足情報をつける
スコープ、
const appLogger = signale.scope('cli:app');
appLogger.start('listen');
// [cli:app] › ▶ start listen
や現在のファイル名、
signale.config({displayFilename: false});
// [cli.js] › ✔ success foo
またdisplayDate
で年月日、displayTimestamp
で時分秒を出したりできます。
ログを表示しないようにする
開発中だけ出したいとかあると思います。
これは設定のstream
で/dev/null
に書き込むようにするとすべて捨てる事ができます。(以下はdev-null
パッケージを使ってます)
const devnull = require('dev-null');
const signale = new Signale({stream: devnull()});
一部だけ消したい時は各types
で設定する必要があります。例えば、「debug
タイプ捨ててぇ」時
const devnull = require('dev-null');
const signale = new Signale({
types: {
debug: {
stream: [devnull()]
}
}
});
👦🏻「ログファイルに出してぇ」
const signale = new Signale({
stream: require('fs').createWriteStream('/tmp/foo.log')
});