我正在尝试为活跃的tasttrackers收集各种指标,但它会引发异常
不确定原因?
for(String s: jc.getClusterStatus(true).getActiveTrackerNames()){
System.out.println("tt "+s);
System.out.println(""+ new org.apache.hadoop.mapreduce.server.jobtracker.TaskTracker(s).getAvailableSlots(TaskType.MAP)); }
提示$ /installs/hadoop-0.20.2//bin/hadoop jar tools.jar tools.MetaInfo
tt tracker_10.0.0.6:localhost / 127.0.0.1:53256 java.lang.NullPointerException位于tools.MetaInfo的org.apache.hadoop.mapreduce.server.jobtracker.TaskTracker.getAvailableSlots(TaskTracker.java:90)。 (MetaInfo.java:44)位于sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)的sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)上的tools.MetaInfo.main(MetaInfo.java:51)。在org.apache.hadoop.util.RunJar.main(RunJar.java:186)的java.lang.reflect.Method.invoke(Method.java:597)中反映.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)jabir: CompareHdfs jabir.ahmed $
不确定为什么它不显示可用的插槽但显示错误
答案 0 :(得分:1)
我正在尝试为活跃的tasttrackers收集各种指标,但它会引发异常
new TaskTracker()
将创建一个新的TaskTracker,这不是您想要做的。
检查Hadoop框架中各种内置计数器的JobCounter和TaskCounter类。此tutorial将有助于检索计数器。除了内置计数器,还可以为任何与Hadoop框架相关的其他数据的特定于应用程序的数据构建custom counters。
此外,将线条分成多行。使用()。b()。c()。d()。e(),很难知道NPE何时来自。
答案 1 :(得分:0)
您还可以找到当前状态,使用tasktracker做什么 http://x.x.x.x:50060/tasktracker.jsp