/** * Create an event to record the unsuccessful completion of attempts * * @param id Attempt ID * @param taskType Type of the task * @param status Status of the attempt * @param finishTime Finish time of the attempt * @param hostname Name of the host where the attempt executed * @param error Error string * @param allSplits the "splits", or a pixelated graph of various measurable worker node state * variables against progress. Currently there are four; wallclock time, CPU time, virtual * memory and physical memory. */ public TaskAttemptUnsuccessfulCompletionEvent( TaskAttemptID id, TaskType taskType, String status, long finishTime, String hostname, String error, int[][] allSplits) { datum.taskid = new Utf8(id.getTaskID().toString()); datum.taskType = new Utf8(taskType.name()); datum.attemptId = new Utf8(id.toString()); datum.finishTime = finishTime; datum.hostname = new Utf8(hostname); datum.error = new Utf8(error); datum.status = new Utf8(status); datum.clockSplits = AvroArrayUtils.toAvro(ProgressSplitsBlock.arrayGetWallclockTime(allSplits)); datum.cpuUsages = AvroArrayUtils.toAvro(ProgressSplitsBlock.arrayGetCPUTime(allSplits)); datum.vMemKbytes = AvroArrayUtils.toAvro(ProgressSplitsBlock.arrayGetVMemKbytes(allSplits)); datum.physMemKbytes = AvroArrayUtils.toAvro(ProgressSplitsBlock.arrayGetPhysMemKbytes(allSplits)); }
public int[] getPhysMemKbytes() { return AvroArrayUtils.fromAvro(datum.physMemKbytes); }
public int[] getCpuUsages() { return AvroArrayUtils.fromAvro(datum.cpuUsages); }
public int[] getVMemKbytes() { return AvroArrayUtils.fromAvro(datum.vMemKbytes); }
public int[] getClockSplits() { return AvroArrayUtils.fromAvro(datum.clockSplits); }