Fairly regularly the site gets hit by a nuisance crawler / scraper that brings the server to its knees, and the IP address can be checked on abuseipdb.com to confirm that it’s a nefarious agent and not a legitimate crawler. Or sometimes a registered user is up to something that hammers the server, and this report also helps to identify the source of the problem. Would it be possible to use the Discourse Data Explorer plugin to create something similar?
Definitely, I think this would be a great fit. For example, there are queries shipped by default with the Data Explorer plugin such as Most Active Lurkers.
active users without posts and excessive read times, it accepts a post_read_count parameter that sets the threshold for posts read.
Or
User Participation Statistics
Detailed statistics for the most active users.
This can of course be tweaked to your use case… or you can write something custom to fit your needs.