Hi Mark!

Sorry for answering after a long time.
> I am curious about how the declaration order matters.  My understanding is that each message will be evaluated for a match on each log statement in the order that they appear in the file and only when it hits a log statement with a final flag will it stop attempting to match.  Is that correct?
Yes. :)
As Fabien mentioned, a "fallback" log path would be need to not drop unprocessed log messages.

> ... it seems like to me that if they aren’t different it would be easier to do multiple log statements if generated dynamically.
A config with many log paths would be easy to generate, but hard to read/maintain.
If you find if-else config hard to generate from code, you can use the junction/channel with final flags too. Just make sure you have a fallback channel too.

Regards,
Gabor