Apache HTrace是Cloudera开源出来的一个分布式系统跟踪框架,支持HDFS和HBase等系统。该项目目前还在孵化阶段。
Apache HTrace是一个 Apache Incubator 项目, 可以与独立的应用程序和库使用。HTrace是专为大的分布式系统使用的,如Apache Hadoop分布式文件系统和Apache HBase存储引擎。
通过添加HTrace 支持到你的项目上,你将允许终端用户跟踪他们的请求。此外,任何其他项目使用HTrace都可以使它按照你的项目的请求。 这就是为什么我们说HTrace是“终端到终端”的原因。
为了使用HTrace,应用程序必须链接到适当的核心库。HTrace的核心库都经过精心设计,以尽量减少依赖关系的数量。HTrace目前拥有Java,C和C ++的支持。
HTrace保证核心库的API不会以不兼容的方式在次要版本中改变。所以,如果您的应用程序使用HTrace4.1,它应该继续使用HTrace4.2工作,并没有更改代码。 (但是HTrace5将会改变一些东西,因为它是一个主要版本。)
Java
HTrace的Java库被命名为htrace- core4.jar,这个jar只在CLASSPATH出现,如果您正在使用Maven,添加以下到您的dependencyManagement部分:
<dependencyManagement> <dependencies> <dependency> <groupId>org.apache.htrace</groupId> <artifactId>htrace-core4</artifactId> <version>4.1.0-incubating</version> </dependency> ... </dependencies> ...</dependencyManagement>
C
HTrace的C库被命名为libhtrace.so。libhtrace.so接口的描述在htrace.h
C ++
该接口在htrace.hpp一样使用C API描述,除了你使用htrace.hpp代替htrace.h的。