[GRADLE-2040] Reduce log levels for the Tooling API Created: 11/Jan/12 Updated: 04/Jan/13 Resolved: 24/Jan/12 |
|
Status: | Resolved |
Project: | Gradle |
Affects Version/s: | None |
Fix Version/s: | 1.0-milestone-8 |
Type: | Bug | ||
Reporter: | Gradle Forums | Assignee: | Szczepan Faber |
Resolution: | Fixed | Votes: | 0 |
Description |
First of all I want to thank you for the great work you have done with gradle. At the moment i am trying to leverage the tooling api to execute embedded builds for a kind of of integration server. My problem is that the logoutput fills my console with messages like the following: I have searched several hours for a hook to suppress this log messages or pipe them into a file. |
Comments |
Comment by Gradle Forums [ 11/Jan/12 ] |
Hey, It might be a bug. I expected to provide a configurable slf4j implementation and hence tweak the log levels but it didn't have the effect it should have had. Few questions, first: what version of tooling api do you use and what gradle target version do you connect to? |
Comment by Gradle Forums [ 11/Jan/12 ] |
Thanks for your reply. |
Comment by Gradle Forums [ 11/Jan/12 ] |
Cool. I'll do some digging and get back. |
Comment by Gradle Forums [ 11/Jan/12 ] |
Thanks |
Comment by Gradle Forums [ 11/Jan/12 ] |
Currently you cannot easily configure the log levels for the Tooling API. The tooling API is divided into consumer piece (the tooling api jar) and the provider piece (basically the target gradle you connect to). The log levels for consumer you should be able to configure in slf4j regular way, e.g. use configurable implementation of slf4j (for example, log4j), prepare the configuration and make sure the configuration is consumed (for log4j that would be log4.properties somewhere on the classpath). However, for the provider you cannot easily change the log levels at the moment. I'm creating a jira ticket for it and I'm pretty sure we want to fix it soon. The only workaround that comes to my mind is wrapping your System.out with something that can filter out the tooling api debug entries. I know it's not beautiful - we'll fix this problem definitely. Thanks for reporting! |
Comment by Szczepan Faber [ 24/Jan/12 ] |
I fixed this problem while solving the concurrency issue with slf4j. In M8 provider, the tooling API logging is set to INFO (I wasn't if it should be LIFECYCLE, though). It's not configurable by the client but it should reduce the level of logging significantly, as the tooling API provider is pretty thin and there's not too much logging even at INFO level. If someone connects the tooling API to older gradle versions (<M8) the only workaround I see is replacing sys out/err. |