It's a big mistake that the format language looks like that of printf.
If you use this in a big code base, there will still be the old printf all over the place.
Now you have to think: is this custom logging function here based on the safe printf from github, or is it vsprintf under the hood?