跳到主要内容
CNode

node如何做到日志“同步”

问答
NnewJack12发布于 7 年前最后回复 7 年前
1045400

由于node本身异步的机制,打印日志也是异步的,而不是一个请求对应一个完整的日志过程,在请求并发的时候日志都是混乱的,请问大佬们平时都是怎么做的,希望大家可以互相讨论学习下

查看回复

回复 (10)

J
jyk0011#107 年前

试了几种写文件的方式,最后发现追加的方式可行,不会丢数据。

//追加方法 fs.appendFile("./json.txt",'\r\n'+ request.url , function(error) { if (error) console.log("追加文件失败" + error.message); else console.log("追加成功:" + request.url); });

J
jyk0011#97 年前

没太懂,如果你的日志乱了,说明你代码本身(不含日志部分)就是混乱的。 如果你的代码没写乱,那么日志就不可能乱。 记录日志和异步同步,单线程多线程没啥关系。反倒是多线程容易乱。

N
nzmd#87 年前

不同框架下具体怎么实现呢?express、koa

O
OXOYO#77 年前

目前用的uuid做requestID image.png

Z
Zhang8023Lyf#67 年前

你好

C
captainblue2013#57 年前

tradeId & timestamp

G
Gitforxuyang#47 年前

加requestId正解

A
April-5#37 年前

这是异步机制问题吗?多线程没这个问题吗?

A
atian25#27 年前

乱就乱啊,通过 requestid 和 pid 过滤就好了

W
waitingsong#17 年前

同步写到指定(日志)文件。。。

参与回复

登录后即可参与回复。登录