public function getDataManager($elasticSearchConfigFilePath)
 {
     if (empty($this->dataManagers[$elasticSearchConfigFilePath])) {
         $elasticSearchDao = ElasticSearchDaoFactory::getInstance()->getElasticSearchDao($elasticSearchConfigFilePath, 'newmonk_error');
         $this->dataManagers[$elasticSearchConfigFilePath] = new DataManager($elasticSearchDao);
     }
     return $this->dataManagers[$elasticSearchConfigFilePath];
 }
 public function getBreachManager($errorConfigFilePath, $loggingConfigFilePath, $elasticSearchConfigFilePath, $logDirPath)
 {
     $errorConfigManager = ErrorConfigManagerFactory::getInstance()->getManager($errorConfigFilePath);
     $slaConfigManager = new ConfigManager($errorConfigManager);
     $loggingConfigManager = LoggingConfigManagerFactory::getInstance()->getLoggingConfigManager($loggingConfigFilePath);
     $elasticSearchDao = ElasticSearchDaoFactory::getInstance()->getElasticSearchDao($elasticSearchConfigFilePath, 'newmonk_error');
     $slackApiIncomingWebhookManager = SlackApiIncomingWebhookFactory::getInstance()->getManager();
     $activityLogger = LoggerFactory::getInstance()->getFileLogger('ErrorSlaBreachManager', $logDirPath);
     return new BreachManager($slaConfigManager, $loggingConfigManager, $elasticSearchDao, $slackApiIncomingWebhookManager, $activityLogger);
 }