Facter is used by puppet to gather data about the systems puppet is managing. It's actually fairly mature and doesn't need to be changed very often.
I haven't done it, but it should be trivial to make it work with other systems that need something like this.
Reasonably easy to write plugins for, though you'll need to know a little ruby to do it. I've written a few that are probably mostly only useful for my site; fairly little overhead beyond figuring out how to write the code to gather the data you need.
I'm mostly a sysadmin, and I've never been a Java programmer, so my perspective is a little different...
It's definitely robust and seems to work well at what it does.
But the documentation and the configuration files both suck!
Want to do something typical: no need to read the docs at all, and no need to change the configuration: the defaults are pretty good for most cases.
Need to do something unusual? Good luck! It's probably possible, but it's certainly hard.
The syntax for the majority of configuration files is XML, which simply sucks for editing by hand. Great for computers talking to computers, but terrible once a human needs to deal with it directly.
And the docs. Ugh. At least the docs for the configs are "Ugh". Organized by the XML hierarchy! With no examples!
But seriously, I hate when I have to deal with tomcat, but it's still better than most of the other choices out there for hosting JSP applications. The Java developers that don't have to deal with more "interesting" configurations all seem to love it, even.