I have a requirement which requires all data, logs, transaction, etc that was done during the testing phase be purged/deleted before being able to rollout the system into production.
Is there a proper procedure to do this? This would involved data in
a) CUCM CDR
b) Logger DB
d) CVP report server
e) and any file system logs from the various components
CDR: if it's CUCM >= 5.x you cannot access the database directly. Actually, just install an SFTP server, push all the CDR information to there, and "virtually" mark the end of the testing phase.
ICM: Is there any configuration you want to keep? If not, then just drop and recreate all databases using the icmdba tool. If yes, then... well, I don't know. I might say go ahead and truncate all _Interval (or, _Half_Hour) and _Detail tables, but it might mess up the table constraints.
System logs: from ICM, it's always component/logfiles/*.ems and *.ems.gz
I assume we are talking about the EMS generated logs.
Take a look at the first table at this document:
What you are looking for is EMSAllLogFilesMax and EMSLogFileMax.
Based on that, a default of 20 EMS log files (for each type) are kept with a maximum of 100k for each of them. And this is applicable for all ICM components (Rogger/PG/AWHDS)?
Is there a way to calculate the space required to keep for 3 months if the the estimate call volume is known?
This is applicable to all of the ICM processes using EMS (and there's none I can think of not using EMS).
I am not aware of any good calcuation. Another factor is the EMSTraceMask setting (see http://www.cisco.com/c/en/us/support/docs/voice-unified-communications/unified-contact-center-enterprise/23065-IPCC-tracing.html).
Some components like the PG PIM's or the JGW or even CTI server tend to generate an enormous amount of log files. Some other components like the Router AppGW hardly spit out anything if the EMSTraceMask is not pulled up to the sky.
You might have to first find the detail level you require, set the TraceMask accordingly, observe the log file/day ratio and then set the EMSAllLogFilesMax and EMSLogFileMax to a reasonable number.
Regarding items B and C..... Assuming you are referring specifically to reporting data and not configuration data I would recommend temporarily setting your retention periods on the applicable tables to 1 day (not sure if 0 works). The tables should then be truncated as part of the nightly purge prcoess. Once you've confirmed the data is purged as expected you can reset the retention days to their original values. You'll want to do this on your Loggers and HDS(s).
Regarding item A... while you can't access the DB directly outside of the Cisco web interface, there is a manual purge feature available in the Serviceability module of CUCM. At least in my 8.5 version there is. Have never used it but it appears to allow for a purge of CDR data.