HDFS-7623. Add htrace configuration properties to core-default.xml and update user doc about how to enable htrace. (yliu)
This commit is contained in:
parent
610aa71a10
commit
3f37354daa
|
@ -1646,4 +1646,28 @@ for ldap providers in the same way as above does.
|
||||||
</description>
|
</description>
|
||||||
</property>
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>hadoop.htrace.sampler</name>
|
||||||
|
<value>NeverSampler</value>
|
||||||
|
<description>
|
||||||
|
Configure the samplers for HTrace, the value can be NeverSampler,
|
||||||
|
AlwaysSampler or ProbabilitySampler. NeverSampler: HTrace is OFF
|
||||||
|
for all spans; AlwaysSampler: HTrace is ON for all spans;
|
||||||
|
ProbabilitySampler: HTrace is ON for some percentage% of top-level
|
||||||
|
spans.
|
||||||
|
</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
<property>
|
||||||
|
<name>hadoop.htrace.spanreceiver.classes</name>
|
||||||
|
<value></value>
|
||||||
|
<description>
|
||||||
|
A comma separated list of the fully-qualified class name of classes
|
||||||
|
implementing SpanReceiver. The tracing system works by collecting
|
||||||
|
information in structs called 'Spans'. It is up to you to choose
|
||||||
|
how you want to receive this information by implementing the
|
||||||
|
SpanReceiver interface.
|
||||||
|
</description>
|
||||||
|
</property>
|
||||||
|
|
||||||
</configuration>
|
</configuration>
|
||||||
|
|
|
@ -16,19 +16,32 @@
|
||||||
---
|
---
|
||||||
${maven.build.timestamp}
|
${maven.build.timestamp}
|
||||||
|
|
||||||
Enabling Dapper-like Tracing in HDFS
|
Enabling Dapper-like Tracing in Hadoop
|
||||||
|
|
||||||
%{toc|section=1|fromDepth=0}
|
%{toc|section=1|fromDepth=0}
|
||||||
|
|
||||||
* {Dapper-like Tracing in HDFS}
|
* {Dapper-like Tracing in Hadoop}
|
||||||
|
|
||||||
** HTrace
|
** HTrace
|
||||||
|
|
||||||
{{{https://issues.apache.org/jira/browse/HDFS-5274}HDFS-5274}}
|
{{{https://issues.apache.org/jira/browse/HDFS-5274}HDFS-5274}}
|
||||||
added support for tracing requests through HDFS,
|
added support for tracing requests through HDFS,
|
||||||
using the open source tracing library, {{{https://github.com/cloudera/htrace}HTrace}}.
|
using the open source tracing library, {{{https://git-wip-us.apache.org/repos/asf/incubator-htrace.git}Apache HTrace}}.
|
||||||
Setting up tracing is quite simple, however it requires some very minor changes to your client code.
|
Setting up tracing is quite simple, however it requires some very minor changes to your client code.
|
||||||
|
|
||||||
|
** Samplers
|
||||||
|
Configure the samplers in <<<core-site.xml>>> property: <<<hadoop.htrace.sampler>>>.
|
||||||
|
The value can be NeverSampler, AlwaysSampler or ProbabilitySampler. NeverSampler: HTrace is OFF
|
||||||
|
for all spans; AlwaysSampler: HTrace is ON for all spans; ProbabilitySampler: HTrace is ON for
|
||||||
|
some percentage% of top-level spans.
|
||||||
|
|
||||||
|
+----
|
||||||
|
<property>
|
||||||
|
<name>hadoop.htrace.sampler</name>
|
||||||
|
<value>NeverSampler</value>
|
||||||
|
</property>
|
||||||
|
+----
|
||||||
|
|
||||||
** SpanReceivers
|
** SpanReceivers
|
||||||
|
|
||||||
The tracing system works by collecting information in structs called 'Spans'.
|
The tracing system works by collecting information in structs called 'Spans'.
|
||||||
|
@ -42,7 +55,7 @@ public void receiveSpan(Span span);
|
||||||
Configure what SpanReceivers you'd like to use
|
Configure what SpanReceivers you'd like to use
|
||||||
by putting a comma separated list of the fully-qualified class name of
|
by putting a comma separated list of the fully-qualified class name of
|
||||||
classes implementing SpanReceiver
|
classes implementing SpanReceiver
|
||||||
in <<<hdfs-site.xml>>> property: <<<hadoop.htrace.spanreceiver.classes>>>.
|
in <<<core-site.xml>>> property: <<<hadoop.htrace.spanreceiver.classes>>>.
|
||||||
|
|
||||||
+----
|
+----
|
||||||
<property>
|
<property>
|
||||||
|
@ -83,11 +96,11 @@ public void receiveSpan(Span span);
|
||||||
$ git clone https://github.com/cloudera/htrace
|
$ git clone https://github.com/cloudera/htrace
|
||||||
$ cd htrace/htrace-zipkin
|
$ cd htrace/htrace-zipkin
|
||||||
$ mvn compile assembly:single
|
$ mvn compile assembly:single
|
||||||
$ cp target/htrace-zipkin-*-jar-with-dependencies.jar $HADOOP_HOME/share/hadoop/hdfs/lib/
|
$ cp target/htrace-zipkin-*-jar-with-dependencies.jar $HADOOP_HOME/share/hadoop/common/lib/
|
||||||
+----
|
+----
|
||||||
|
|
||||||
The sample configuration for <<<ZipkinSpanReceiver>>> is shown below.
|
The sample configuration for <<<ZipkinSpanReceiver>>> is shown below.
|
||||||
By adding these to <<<hdfs-site.xml>>> of NameNode and DataNodes,
|
By adding these to <<<core-site.xml>>> of NameNode and DataNodes,
|
||||||
<<<ZipkinSpanReceiver>>> is initialized on the startup.
|
<<<ZipkinSpanReceiver>>> is initialized on the startup.
|
||||||
You also need this configuration on the client node in addition to the servers.
|
You also need this configuration on the client node in addition to the servers.
|
||||||
|
|
||||||
|
|
|
@ -258,6 +258,9 @@ Release 2.7.0 - UNRELEASED
|
||||||
|
|
||||||
HDFS-7640. Print NFS Client in the NFS log. (Brandon Li via wheat9)
|
HDFS-7640. Print NFS Client in the NFS log. (Brandon Li via wheat9)
|
||||||
|
|
||||||
|
HDFS-7623. Add htrace configuration properties to core-default.xml and
|
||||||
|
update user doc about how to enable htrace. (yliu)
|
||||||
|
|
||||||
OPTIMIZATIONS
|
OPTIMIZATIONS
|
||||||
|
|
||||||
HDFS-7454. Reduce memory footprint for AclEntries in NameNode.
|
HDFS-7454. Reduce memory footprint for AclEntries in NameNode.
|
||||||
|
|
Loading…
Reference in New Issue