public void addTaskExecLog(List<TaskExecLog> logs) {
        if (properties.isTaskExecLogIndexingEnabled() && !logs.isEmpty()) {
            Monitors.recordTaskExecLogSize(logs.size());
            int taskExecLogSizeLimit = properties.getTaskExecLogSizeLimit();
            if (logs.size() > taskExecLogSizeLimit) {
                LOGGER.warn(
                        "Task Execution log size: {} for taskId: {} exceeds the limit: {}",
                        logs.size(),
                        logs.get(0).getTaskId(),
                        taskExecLogSizeLimit);
                logs = logs.stream().limit(taskExecLogSizeLimit).collect(Collectors.toList());
            }
            if (properties.isAsyncIndexingEnabled()) {
                indexDAO.asyncAddTaskExecutionLogs(logs);
            } else {
                indexDAO.addTaskExecutionLogs(logs);
            }
        }
    }
Save the {@link EventExecution} to the data store Saves to {@link ExecutionDAO} first, if
this succeeds then saves to the {@link IndexDAO}.

@param eventExecution the {@link EventExecution} to be saved
@return true if save succeeds, false otherwise.
core/src/main/java/com/netflix/conductor/core/dal/ExecutionDAOFacade.java