I think you've got the association around the wrong way, personally.
The primary object we're concerned about is messages.
Everything is an attribute of a message, including host information.
I think each message object should be self describing and a discrete
entity on its own. As you said, a log entry is atomic.
The only counter to that I've come across is with Solaris kernel messages
using cmn_err() - they support the idea of a continued message (CE_CONT).
What this actually means is it doesn't get prefixed as a NOTICE/WARNING,
etc. I don't know if you can meaningfully say after you have sent a
message that you want to continue it on.
Darren