I would say use CAR but that wouldn't help with ingress calls to extensions. At least, the canned reports wouldn't help. You would need to export the data in some way. Maybe even generate the raw CDR data on some scheduled basis. Then you would need to process the raw data in another app (like excel) to get the numbers/views you are looking for.
CAR (CDR Analysis and Reporting) is a cheap-o CDR application that comes free with CUCM. To enable the app you must enable the CAR service in the Serviceability pages.
HTH.
Regards,
Bill