Collecting usage statistics per web-page on sites is common practice, I'm interested in a similar thing, but for GUI:s. You see Google Chrome (and others) collect usage statistics so Google can find out what features people use, to data-mine what seems to "work".
A straight-forward way to do this is to explicitly log the interaction with every GUI element, but that is both tedious and prone to mistakes in missing parts of the GUI.
So what I wonder, is this a solved problem? Is there anything existing that can provide a summary similar to code-profiling, metrics (number of visits, clicks, etc) broken down on per component? Automatically added to all components in the whole tree of AWT/Swing components?
This information would need to be summarized to a file so it can be sent to "us" for aggregation and data mining, to drive decisions etc.
I don't really know exactly what I want, so I am also asking to find out good ideas and what other people have done that have faced this problem.