我已经在Ubuntu 14.04上的2.6.0 x32中成功地将Zipkin与Hadoop Htrace一起使用。 现在我想使用它与Hadoop 2.7.3。,但我甚至无法启用Htrace跟踪这个hadoop版本。 2.6.0中HTrace的设置与2.7.3不同,因为它可以在这里看到 - 2.6.0和这里 - 2.7.3。Hadoop 2.7.3中的HTrace
在2.6.0我有这条线在NameNode的日志文件:
INFO org.apache.hadoop.tracing.SpanReceiverHost: SpanReceiver org.htrace.impl.ZipkinSpanReceiver was loaded successfully.
我在2.7.3没有这样的Namenode日志文件。
因为没有与基普金的成功,我试图用LocalFileSpanReceiver在网上的教程描述:
<property>
<name>hadoop.htrace.sampler</name>
<value>AlwaysSampler</value>
</property>
<property>
<name>hadoop.htrace.spanreceiver.classes</name>
<value>org.apache.htrace.impl.LocalFileSpanReceiver</value>
</property>
<property>
<name>hadoop.htrace.local-file-span-receiver.path</name>
<value>/var/log/hadoop/htrace.out</value>
</property>
在/ var /日志/ Hadoop的/存在,上面有777分的权利,但没有...
的TracingFsShell示例编译并使用以下修改运行:
SpanReceiverHost.get(new HdfsConfiguration(),"");
因为它可以在Hadoop中的源代码在中找到虽然在线教程不使用该方法签名。 (来源diff)
对于两个Hadoop版本java 1.7来说,环境是一样的。另外,hadoop是从源代码编译的,因为Ubuntu 14.04是x32位的。 Hadoop以全分布模式部署,使用lxc容器。
core-site.xml
为基普金(基普金PARAMS here):
<property>
<name>hadoop.htrace.spanreceiver.classes</name>
<value>org.apache.htrace.impl.ZipkinSpanReceiver</value>
</property>
<property>
<name>hadoop.htrace.zipkin.scribe.hostname</name>
<value>10.0.3.100</value>
</property>
<property>
<name>hadoop.htrace.zipkin.scribe.port</name>
<value>9410</value>
</property>