Globally set the environment variable PLANTUML_STATS to true
Call OptionFlags.getInstance().setEnableStats(true) from your Java code
Thoses statistics are very general. The goal is to measure PlantUML usage and performance and not to spy on users. When statistics generation is on, a message is printed within the license to inform users about this. (@startuml/license/@enduml).
You can generate statistics about your PlantUML usage either at XML or HTML format. To do so, you can add -xmlstats or -htmlstats flag in the command line. A file plantuml-stats.xml or plantuml-stats.html will be written at the end of the process: If you want to generate statistics on the fly (rather than at the end of the process), you can use the flag -realtimestats. There is also a -loopstats flag in the command line that continuously prints to the console statistics about diagram generations. This could be useful if you have some background daemon running PlantUML. Some of those options are also available with the ANT task.
If you use PlantUML as a library, you can use the StatsUtils.getStats() methods that return a Stats object with all datas. You can retrieve it to use it as you wish. Here is a short class diagram about this API: