You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Our alogf log function prefixes logged messages with a timestamp, which is very useful. Unfortunately, that requires two printf statements, which we don't want to get split up by concurrent writes. Right now we're using flockfile(3) which makes logging even slower than usual.
Possible approaches:
Do all logging on a single thread
Use fputs_unlocked(3) to write without locking
Use write(2) (or libuv's equivalent) to write without locking
Not sure what the best (simplest/fastest) solution is.
Performance does in fact matter for traffic logging.
The text was updated successfully, but these errors were encountered:
Actually alogf isn't used for traffic logging. However traffic logging could still be made faster by doing all writing on a single thread, which would let us omit extra locking.
Our
alogf
log function prefixes logged messages with a timestamp, which is very useful. Unfortunately, that requires two printf statements, which we don't want to get split up by concurrent writes. Right now we're usingflockfile(3)
which makes logging even slower than usual.Possible approaches:
fputs_unlocked(3)
to write without lockingwrite(2)
(or libuv's equivalent) to write without lockingNot sure what the best (simplest/fastest) solution is.
Performance does in fact matter for traffic logging.
The text was updated successfully, but these errors were encountered: