-
Notifications
You must be signed in to change notification settings - Fork 104
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
size-based rotation keeps growing early logs on restart #179
Comments
PS Adding keywords::enable_final_rotation = false Doesn't appear to help. |
The problem is with the The situation when the newly opened file after rotation exists, as well as any other situation when the target directory is modified by a third party, is not expected. The library makes no attempt to preserve that file or maintain its invariants, like adhering to the file size limit. The file counter can be fixed by not calling I should also add a protection against multiple |
This prevents the file counter from being reset to zero if scan_for_files is called multiple times, and subsequent calls don't find any new files. Reported in #179.
Should be implemented now, thanks for the report. |
By request, reproducer adapted from https://stackoverflow.com/a/71220978/85371
A minimal size-based rotation textfile sink:
When run a few times will create
sample_0.log
...sample_3.log
but never more. That's because the first message always goes tosample_0.log
even though that had already been rotated, the second tosample_1.log
even after it, too, has been rotated etc. There are only 4 messages logged per invocation, so nothing ever reachessample_4.log
. The upshot is that after 100 invocations, the sizes of all the logs are multiples of the rotation size, especially the first file.Also, log messages are scattered out of chronological order across several files.
In a comment @Lastique said
Is there still a bug, or is there some other setup issue/edge condition at play?
Sample output:
Prints Live On Coliru
Note that the line
Indicates that the files have grown to 41 kiB in total, A more live play by play:
The text was updated successfully, but these errors were encountered: