0

I have multiple loggers writing into a file in async mode.

There is a logger that is always writing on the file, i think only when shutting down / flush the log.

here a sample of logs:

[2023-09-02 10:40:04.949| 27228][ * APP.   debug] Application is on Debug level logging.
[2023-09-02 10:40:07.011| 27228][ * APP.    info] delay: 0 --- fps: 10 --- tpf: 101
[2023-09-02 10:40:10.239| 23396][ * APP. warning] Total number of unpacked file mismatch: unpacked 665 -- expected 663 -- PAKs 15 -- d2files 676
[2023-09-02 10:40:43.289| 23396][ * APP.   debug] AFINAL resources found: AFINALB.WSA
[2023-09-02 10:40:07.005| 27228][RENDER.    info] Created renderer: direct3d

the last entry of the log RENDER should have been like at the 2nd row position, instead is always written when the log is shutting down/flush all the loggers.

is there any reason for that?

The pool used is with 2 threads and a size of 100 messages for the queue.

there are a total of 14 loggers sharing the same file, only 2 of those wrote in that sample file reported here.

As extra information if it might be relevant: those loggers are all multi-sink, having a "stdout"/"stderr" output too along side the file, but due to each loggers have a slightly different pattern, each one of the loggers has its own stdout or stderr synk. The sinks used are mt (multi-threading)

Is there any reason why that RENDER async logger has to be so much out of place? (in this example it is almost 40 second lag to write the entry down)

Raffaello
  • 1,641
  • 15
  • 29

0 Answers0