log icon indicating copy to clipboard operation
log copied to clipboard

Deferred logs improvements

Open 8ctopus opened this issue 3 years ago • 0 comments

Deferring logs writing to file has a huge positive impact #9 on speed however it's a bit riskier because if the script terminates in an unclean way, we lose the whole log.

In this pull request, I've added:

  • Add possibility to manually flush deferred logs
  • Fix deferred logs would show up as notice
  • Fix deferred logs would not have new line separator
  • Add flush deferred trigger (flush when x number of logs were stored)

Here's how it looks

    $info = (new File(ConfigBase::logFile(), false))
        ->setMinLevel('info')
        // propagate to other loggers
        ->setCascading(true)
        // postpone/accumulate logs processing
        ->setDeferred(true)
        // automatically flush when the trigger is reached
        ->setDeferredTrigger(100);

8ctopus avatar Sep 09 '22 11:09 8ctopus