class AwsRDSInstanceContainer extends AwsContainer {

    @ChaosExperiment(experimentType = ExperimentType.STATE)
    public void startSnapshot (Experiment experiment) {
        experiment.setCheckContainerHealth(() -> awsRDSPlatform.isInstanceSnapshotRunning(dbInstanceIdentifier) ? ContainerHealth.RUNNING_EXPERIMENT : ContainerHealth.NORMAL);
        final DBSnapshot dbSnapshot = awsRDSPlatform.snapshotDBInstance(dbInstanceIdentifier);
        experiment.setSelfHealingMethod(() -> {
            try {
                awsRDSPlatform.deleteInstanceSnapshot(dbSnapshot);
            } catch (DBSnapshotNotFoundException e) {
                log.warn("Attempted to delete snapshot, but it was already deleted", v(DataDogConstants.RDS_INSTANCE_SNAPSHOT, dbSnapshot), e);
            }
        });
        experiment.setFinalizeMethod(experiment.getSelfHealingMethod());
    }

}