This week's book giveaway is in the OCAJP 8 forum. We're giving away four copies of OCA Java SE 8 Programmer I Study Guide and have Edward Finegan & Robert Liguori on-line! See this thread for details.
You set up your root logger at info level using "R" appender; this means that all log4j logging will go that appender including third party products.
You can do the following
1. put a logger in your properties file for the struts package such as "log4j.logger.org.apache.struts"
2. with the struts logger using a different appender and/or set to a different level
# only warnings or higher logging to a different appender (you would # need to define that different appender) log4j.logger.org.apache.struts=warn,STRUTS
# same appender, higher level log4j.logger.org.apache.struts=warn,R
3. and you need to turn off additivity on the struts logging log4j.additivity.org.apache.struts=false
The additivity part says for this logger, don't log to appenders attached to any loggers up the hierarchy (root logger in this case). This is important to keep from getting duplicate messages.
If you're just getting struts set up in your project it is good to keep the struts logging turned on (but to a different appender so that it doesn't clutter up your logging) so you can see what might be going wrong with the struts setup.