我已經在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>