filesite
6 months ago
3 changed files with 68 additions and 1 deletions
@ -0,0 +1,37 @@ |
|||||||
|
'use strict' |
||||||
|
|
||||||
|
/** |
||||||
|
* Save log to file for Loki |
||||||
|
**/ |
||||||
|
|
||||||
|
const express = require('express'); |
||||||
|
const { resolve } = require('node:path'); |
||||||
|
const {default: common} = require('./common.js'); |
||||||
|
|
||||||
|
|
||||||
|
const router = express.Router(); |
||||||
|
|
||||||
|
|
||||||
|
//写入文件接口
|
||||||
|
//@group - 分组,log文件名
|
||||||
|
//其它所有参数均会写入log
|
||||||
|
router.post('/save', (req, res) => { |
||||||
|
let out = {code: 1}; |
||||||
|
|
||||||
|
const group = req.body.group ? req.body.group : 'test'; |
||||||
|
|
||||||
|
const logDir = '/var/log/loki/'; //日志保存目录
|
||||||
|
const logFile = resolve(logDir, `${group}.log`); |
||||||
|
|
||||||
|
const ignoreKeys = ['group', 'timestamp']; |
||||||
|
let params = common.copyBodyParams(req.body, ignoreKeys); |
||||||
|
params.timestamp = common.getTimestampInSeconds(); |
||||||
|
|
||||||
|
const json = JSON.stringify(params); |
||||||
|
common.saveLog(logFile, `${json}\n`); |
||||||
|
|
||||||
|
return res.status(200).json(out); |
||||||
|
}); |
||||||
|
|
||||||
|
|
||||||
|
exports.default = router; |
Loading…
Reference in new issue