Well, I learned something new today! %{SPACE} matches \s*. That is, zero or more whitespace characters. So "DEBUGINFO" (with no space) will match "%{LOG_LEVEL}%{SPACE}%{LOG_LEVEL}".
That can result in "Microsoft.AspNet.server" matching %{NOTSPACE:id}%{SPACE}%{NOTSPACE:user} and user being set to "er"!
It also explains why %{SPACE}(%{NOTSPACE:id}%{SPACE}%{NOTSPACE:user}|%{SPACE})%{SPACE}%{LOGLEVEL:log_level}, which sometimes reduces to %{SPACE}%{SPACE}%{SPACE}%{LOGLEVEL:log_level} can match when there is only a single space.
We can fix things by changing some of those %{SPACE} to \s+ (one or more whitespace characters, rather than zero or more). Also you have spaces in %{NOTSPACE: service} and %{GREEDYDATA: response} which does something weird that I do not understand. You need to change
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.