According to the shepherd NEWS file, if no log file is specified, then logs will get routed to syslog, and get a timestamp. That means that I can just run a custom syslogd, and be done with it, with no change to services, no big hacks or anything.
Not perfect, but good enough.