(I&#x27;m an infrastructure engineer at Stripe)<p>This actually took a fair amount of digging! We&#x27;ve been using some version of unilog for over 4 years now (longer than I&#x27;ve been at Stripe), and we&#x27;d mostly forgotten why we switched. What follows is more the result of historical exploration and guesswork than authoritative statement of original truth.<p>I&#x27;m fairly confident that the impetus for unilog was timestamp prefixes for our log lines. We wanted timestamps (so that we weren&#x27;t dependent on all applications adding them). multilog is capable of doing writing out timestamps, but it formats them with TAI64N. We wanted something more human-parseable.<p>Once we had it, we started adding other features. These days, I&#x27;d say the most useful thing unilog does for us is buffer log lines in memory. We would occasionally see disk writes on EC2 hang for long enough that the in-kernel (64k) pipe buffer would fill up and cause applications to stall.