不推荐使用的 HTTP API

OpenTSDB 的 1.0 版包括一个基本的 HTTP API,该 API 允许查询数据,建议度量或标记名称以及一种访问静态文件的方法。尽管大多数调用已被弃用,但 1.0 API 已转入 2.0 以实现向后兼容性。以下是不同端点以及如何使用它们的列表。

Warning

3.0 版可能会弃用这些不建议使用的方法,因此,如果要针对 HTTP API 开发工具,请确保使用 2.0 版。

如果端点在下面标记为( 弃用 ),则不应将其用于将来的开发工作。

Generalities

大多数端点可以以下一种或多种格式返回数据:

  • 普通测试-或 ASCII,许多请求的默认设置将返回 Content Type 为text/plain的简单数据页面

  • HTML-如果请求不正确或有异常,则响应通常是 HTML 格式的硬编码,而不使用模板

  • JSON-附加了json查询字符串参数后,许多呼叫都可以 JSON 格式进行响应

  • PNG-某些请求(包括异常和错误)可以生成图像文件。在这些情况下,会将错误发送到 GnuPlot,并返回带有由消息组成的标题的结果空图。将参数png附加到查询字符串。

为每个响应返回正确的 Content-Type,例如 HTML text/html; charset=UTF-8,JSON application/json,图像image/png

选择不同的输出格式是通过pngjson查询字符串参数完成的。参数的值将被忽略。例如,您可以请求http://localhost:4242/suggest?type=metrics&q=sys&json返回 JSON 数据。

/

请求根,该根是 GWT 生成的 OpenTSDB GUI。该端点仅返回 HTML,而不能返回其他数据。

/aggregators (Deprecated)

仅以 JSON 格式返回可用聚合函数的列表。其他格式将被忽略。此方法不接受任何查询字符串参数。

Example Request:

http://localhost:4242/aggregators

Example Response:

["min","sum","max","avg"]

/diediedie (Deprecated)

访问该端点会使 TSD 执行正常关闭并退出。正常关闭可通过在退出之前将所有缓冲的编辑刷新到 HBase 来防止数据丢失。端点不返回任何数据,也不接受任何参数。

/dropcaches (Deprecated)

清除所有内部缓存,例如将 UID 命名为 name 和将 name 命名为 UID map。如果您已重命名了 Metrics,tagk 或 tagv,则应使用它。

/logs (Deprecated)

返回 TSD 内部记录的最新行,首先返回最新条目。 OpenTSDB 使用 LogBack,并且src/logback.xml文件必须具有配置的循环缓冲区附加程序,此端点才能起作用。 XML 配置确定每个调用将返回多少行。输出默认为纯文本,其中消息组件由制表符分隔,或者可以使用适当的查询字符串作为 JSON 返回。

该端点还可以在运行时更改的日志记录级别。要使用的查询字符串参数是level=<logging_level>。例如,您可以调用http://localhost:4242/logs?level=INFO将日志级别设置为INFO。有效的参数值是(从最详细到最小):ALL TRACE DEBUG INFO WARN ERROR OFF(名称不区分大小写)。请注意,此方法不会更改logback.xml配置文件,并且重新启动 TSD 将从该文件重新加载。

/q (Deprecated)

查询 TSD 的数据。

/s

提供静态文件,例如 GWT 编译器或 favicon.ico 生成的 JavaScript。 TSD 需要一个--staticroottsd.http.staticroot参数来启动。此参数是包含该端点提供的文件的目录的路径。

例如,当对GET /s/queryui.nocache.js的请求进入时,文件${staticroot}/queryui.nocache.js被发送到浏览器。

注意:默认情况下,TSD 将允许 Client 端缓存静态文件 1 年,并报告磁盘上文件的寿命。如果文件名包含 nocache,则 TSD 将告诉 Client 端不要缓存该文件(GWT 使用此惯用语)。

/stats (Deprecated)

返回有关正在运行的 TSD 的统计信息

/suggest (Deprecated)

用于自动完成调用,以匹配给定字符串上的 Metrics,标记名称或标记值。仅返回 JSON 数据。

Parameters:

  • type-建议值的类型。对于 Metrics,必须为metrics,对于标签名称,必须为tagk;对于标签值,必须为tagv

  • q-要匹配的字符串。匹配区分大小写,并且仅匹配每种数据类型的首个字符。例如,type=metrics&q=sys仅返回以sys开头的 Metrics 名称,例如sys.cpu.0.system

  • max-要返回的可选最大结果数。默认值为 25,并且给定值必须大于 0.

这两个参数都是必需的,否则您将收到异常。

Example Request:

http://localhost:4242/suggest?type=metrics&q=df

Example Response:

[
  "df.1kblocks.free",
  "df.1kblocks.total",
  "df.1kblocks.used",
  "df.inodes.free",
  "df.inodes.total",
  "df.inodes.used"
]

/version (Deprecated)

返回有关正在运行的 TSD 构建的版本信息。可以使用默认值纯文本或 JSON 返回。