public boolean startSnapshot(Long interval, Integer retention) {
if((snapshotThread == null || (snapshotThread != null && (snapshotThread.SnapshotStatus() == 0))) && interval.longValue() > 0) {
saveDuration(interval.longValue());
saveRetention(retention.intValue());
saveSnapshotThreadStatus(true);
snapshotThread = new SnapshotThread(interval.longValue(), mbServer);
snapshotThread.setName("JMX Monitoring Agent Snapshot Thread");
snapshotThread.start();
log.info("Snapshot thread successfully created.");
return true;