首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Hadoop2.7.3中的HTrace

Hadoop2.7.3中的HTrace
EN

Stack Overflow用户
提问于 2016-11-19 16:01:00
回答 2查看 638关注 0票数 1

我已经在2.6.0Ubuntu14.04上的2.6.0 x32中成功地使用了Zipkin和Hadoop。现在我想在Hadoop2.7.3中使用它,但是我甚至不能用这个Hadoop版本启用Htrace跟踪。2.6.0中的HTrace设置与2.7.3不同,因为在这里可以看到-2.6.0和here-2.7.3

在2.6.0中,我在namenode日志文件中有这一行:

代码语言:javascript
复制
INFO org.apache.hadoop.tracing.SpanReceiverHost: SpanReceiver org.htrace.impl.ZipkinSpanReceiver was loaded successfully.

我在2.7.3 Namenode日志文件中没有类似的内容。

由于Zipkin没有成功,我尝试使用在线教程中描述的LocalFileSpanReceiver:

代码语言:javascript
复制
    <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/log/hadoop/存在,有777个权限,但没有.

TracingFsShell示例编译并运行以下修改:

代码语言:javascript
复制
SpanReceiverHost.get(new HdfsConfiguration(),"");

正如可以在hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/tracing/SpanReceiverHost.java中的hadoop源代码中找到的那样,尽管在线教程没有使用该方法签名。(源比较)

对于两个Hadoop版本(Java1.7),环境都是相同的。此外,hadoop是从源代码编译的,因为Ubuntu14.04是x32位。Hadoop部署在完全分布式模式下,使用lxc容器。

core-site.xml for Zipkin ( Zipkin params 这里):

代码语言:javascript
复制
    <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>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-11-30 18:49:26

谢谢你试用HTrace!很抱歉,版本问题现在太痛苦了。

在cloudera的Hadoop的CDH5.5发行版和更高版本中配置HTrace要容易得多。在这里有一个很好的描述:http://blog.cloudera.com/blog/2015/12/new-in-cloudera-labs-apache-htrace-incubating/,如果您想继续使用Apache版本的源代码,而不是供应商版本,请尝试Hadoop3.0.0-alpha1 1。http://hadoop.apache.org/releases.html

在Hadoop2.6和2.7中提供的HTrace库非常古老.我们从未将HTrace 4.x备份到这些分支。它们是稳定分支,因此像跟踪这样的新特性超出了范围。有一些功能,但不多。我建议使用正在积极开发的较新的HTrace 4.x库。HTrace 4.x分支也有一个稳定的API,因此希望在将来将破坏最小化。

票数 2
EN

Stack Overflow用户

发布于 2017-02-10 12:39:46

确切地说,在代码中,我看到配置键的前缀是dfs.htrace,而不是hadoop.htrace。在dfsclient中,是dfs.client.htrace。您可以将前缀更改为dfs.htrace,然后重新启动集群并使其生效。代码在org.apache.hadoop.tracing.SpanReceiverHost类中。希望能帮上忙!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40694955

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档