stronglink icon indicating copy to clipboard operation
stronglink copied to clipboard

Slow logging

Open btrask opened this issue 9 years ago • 1 comments

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.

btrask avatar Nov 08 '15 23:11 btrask

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.

btrask avatar Nov 10 '15 20:11 btrask