fn parse_log_args(raw: &str) -> ParsedLogExpand description
Parse a trace!(...) / debug!(...) / info!(...) / warn!(...) /
error!(...) invocation’s already-stringified args into the message text
and the list of parameter names it carries.
tracing allows the message in any position: leading positional literal,
trailing positional literal, or message = "..." named field. We mirror
the Ruby script: take the first string-literal value across all args (be
it a positional "..." or a message = "..." named field) and treat it
as the message. Only when no literal is present do we fall back to the
first bare positional expression — otherwise patterns like
warn!(%error, "Failed to flush.") would never have their message format
checked because the bare %error would be claimed as the message first.