ProtoLog: check WillOutput early; use a more compact syntax