REST API获取纱线日志

Ben*_*min 4 rest hadoop hadoop-yarn

在Hadoop2中,是否可以使用rest API获得与以下结果相同的结果:

yarn logs -applicationId <application ID>
Run Code Online (Sandbox Code Playgroud)

Rya*_*aba 5

这很痛苦,我没有一个满意的答案,但是我可以为您提供一些资源。

  1. YARN CLI通过转到文件系统来转储日志。如果您的应用程序可以访问HDFS,那么它可以做同样的事情(但这并不简单)。

  2. 或者,您可以使用其余调用http:/// ws / v1 / cluster / apps / {appid}来获取应用程序主日志URL(而不是日志内容)。从此URL,您可以获取带有日志内容的HTML页面,该页面将在带有编码HTML实体(等)的标签中返回。<pre>&amp;

  3. 如果您的应用程序仍在运行,则可以使用容器ID从上述URL中获取原始日志:http:/// ws / v1 / node / containerlogs / {containerId} / stdout。这是YARN-649的一部分。

YARN-1264看起来完全像您想要的,但是与上面的JIRA进行了封闭复制。这不是很准确,因为在容器完成之后,CLI和网页可以获取日志,但是上面的REST服务无法。