下一个人 我不知道我能不能解释清楚但是我们走吧
有一个
exports.sincronizarPedido = async (req, resp) => {
try {
} catch(Err) {
console.log('>> ', Err);
console.log('message ', Err.message);
console.log('toString ', Err.toString());
log.gravarLog(Err,'sincronizarPedidoFinalizados');
return resp.status(500).send({
message: "constants.responseError.ERROR_UNIDENTIFIED" + Err
});
}
}
我把 Err.message 和 toString 放进去看看里面有什么。
当我在 vsCode 中时,我从 vsCode 节点和 js 文件在 cmd 中运行 我可以在日志中记录异常是完美的
31/03/2023 19:30:24;INFO;sincronizarPedido;动态 SQL 错误,SQL 错误代码 = -206,列未知,VFM_NSU,第 9 行,第 7 列
然后我制作 JS webPack,然后我转到 CMD 并执行 node ... JS 文件 它像这样写入日志文件 31/03/2023 19:36:26;信息;sincronizarPedido;
注意通过webPack把我强行报错的SQL中出现的error不见了
第二张图片是通过 webPack 生成的文件 *第二张图片中的观察点,它放置了一个错误文本,但 SQL catch 中生成的异常的其余错误丢失了。
我的日常日志等等
const fs = require('fs');
const path = require('path');
exports.gravarLog = (ps_erro, ps_metodo) => {
const dataAtual = new Date();
// format the date in "dd/MM/yyyy" format
const dataFormatada = dataAtual.toLocaleDateString("pt-BR", {
day: "2-digit",
month: "2-digit",
year: "numeric"
});
//pega hora atual para salvar no log
const horaAtual = new Date().toLocaleTimeString();
// cria o caminho para o arquivo com base na data atual
const ps_rotina = 'INFO';
const ls_caminhoAno = path.join('c:', '\\', 'log', '\\', 'Logs', dataFormatada.slice(6, 10));
const ls_caminhoMes = path.join(ls_caminhoAno, dataFormatada.slice(3, 5));
const ls_caminhoDia = path.join(ls_caminhoMes, dataFormatada.slice(0, 2));
const ls_caminhoLio = path.join(ls_caminhoDia, 'LioMotoBoy')
const ls_nomeArquivo = 'Log.txt';
const ls_caminhoCompleto = path.join(ls_caminhoLio, ls_nomeArquivo);
// cria as pastas se elas ainda não existirem
fs.mkdirSync(ls_caminhoAno, { recursive: true });
fs.mkdirSync(ls_caminhoMes, { recursive: true });
fs.mkdirSync(ls_caminhoDia, { recursive: true });
fs.mkdirSync(ls_caminhoLio, { recursive: true });
// cria a mensagem de log a ser escrita no arquivo
const mensagemLog = `${dataFormatada} ${horaAtual};${ps_rotina};${ps_metodo};${ps_erro.message}\n`;
// escreve a mensagem de log no arquivo especificado
fs.appendFile(ls_caminhoCompleto, mensagemLog, (err) => {
if (err) throw err;
console.log('Log escrito com sucesso!');
});
};
Eu tentei mudar o nome da variavel catch, tentei mudar na rotina de log