WSyslog

WSyslog

new WSyslog(optopt) → {Object}

Description:
  • 輸出log

Source:
Example
import fs from 'fs'
import _ from 'lodash-es'
import w from 'wsemi'
import WSyslog from './src/WSyslog.mjs'

w.fsCleanFolder('./_logs')

let log = WSyslog()
log.info({ event: 'runner', msg: 'start' })
log.warn({ event: 'monitor-memory', msg: 'usage-high', ratio: 85.4 })
log.error({ event: 'crash', msg: 'db connection', code: 500 })

await w.delay(2000) //等待2秒讓pino能flush數據

let vpfs = w.fsTreeFolder('./_logs')
// console.log('vpfs', vpfs)

let fp = _.get(vpfs, `0.path`, '')

let jj = fs.readFileSync(fp, 'utf8')
console.log(jj)
// {"level":30,"time":1751780174415,"pid":24144,"hostname":"DESKTOP-6R7USAO","event":"runner","msg":"start"}
// {"level":40,"time":1751780174415,"pid":24144,"hostname":"DESKTOP-6R7USAO","event":"monitor-memory","msg":"usage-high"}
// {"level":50,"time":1751780174415,"pid":24144,"hostname":"DESKTOP-6R7USAO","event":"crash","msg":"db connection","code":500}
Parameters:
Name Type Attributes Default Description
opt Object <optional>
{}

輸入設定物件,預設{}

Properties
Name Type Attributes Default Description
fdLog String <optional>
'./_logs'

輸入儲存log資料夾字串,預設'./_logs'

interval String <optional>
'day'

輸入儲存log時分檔模式字串,可選'day'、'hr',分別代表每日或每時分檔,預設'day'

Returns:

回傳log物件,提供info、warn、error紀錄函數

Type
Object