code: public void logMapTaskStarted(TaskAttemptID taskAttemptId, long startTime,
                                  String trackerName, int httpPort,
                                  String taskType) {
      if (disableHistory) {
        return;
      }
  
      JobID id = taskAttemptId.getJobID();
      if (!this.jobId.equals(id)) {
        throw new RuntimeException("JobId from task: " + id +
                                   " does not match expected: " + jobId);
      }
  
      if (null != writers) {
        log(writers, RecordTypes.MapAttempt,
            new Keys[]{ Keys.TASK_TYPE, Keys.TASKID,
                        Keys.TASK_ATTEMPT_ID, Keys.START_TIME,
                        Keys.TRACKER_NAME, Keys.HTTP_PORT},
            new String[]{taskType,
                         taskAttemptId.getTaskID().toString(),
                         taskAttemptId.toString(),
                         String.valueOf(startTime), trackerName,
                         httpPort == -1 ? "" :
                         String.valueOf(httpPort)});
      }
    }
docs: Log start time of this map task attempt.
  
  @param taskAttemptId task attempt id
  @param startTime start time of task attempt as reported by task tracker.
  @param trackerName name of the tracker executing the task attempt.
  @param httpPort http port of the task tracker executing the task attempt
  @param taskType Whether the attempt is cleanup or setup or map