2017-03-15 5 views

Antwort

1

Wenn Sie getrennte Aufgabenzähler erhalten möchten, müssen Sie die Methode getTaskReports() für Ihren Hadoop-Job verwenden. Danach können Sie die Methoden getTaskCounter() und findCounter() verwenden, um den benötigten Zähler für jede Aufgabe separat zu finden.

Zum Beispiel, wie Ihre Karte gc-time-millis Zähler erhalten:

Long result = 0L;  
TaskReport[] taskReports = job.getHadoopJob().getTaskReports(TaskType.MAP); 
for (TaskReport taskReport : taskReports) { 
    try { 
     result += taskReport.getTaskCounters().findCounter(TaskCounter.GC_TIME_MILLIS).getValue(); 
     } catch (Exception ignored) {} 
} 
Verwandte Themen