NNM collects events in its private database. The problem is, there is a limit to the number of events it keeps, and once full, it will purge the old ones. Which is to say, unless you periodically export to a data wharehouse, you may not be able to look back 2-3 months. I believe the best way would be to export to a db (SQL) and run reports from there. Additionally, we have written a script to archive off all alarms into a text file every midnight. You could then write a PERL script to parse through that. You could also write a PERL script to talley all severity of event between midnights and then import that into a spreadsheet on a daily basis.
There are probably smart people out there that have a better answer, but I hope this helps.