纱线获取带有rest API的日志

时间:2017-07-18 15:23:45

标签: rest hadoop yarn

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

yarn logs -applicationId <application ID>

1 个答案:

答案 0 :(得分:3)

这是一种痛苦,我没有一个快乐的答案,但我可以为你指出一些资源。

  1. YARN CLI转到file system转储日志。如果您的应用程序可以访问HDFS,它可以执行相同的操作(但这并不简单)。

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

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

  4. 的一部分

    YARN-1264看起来就像你想要的那样,但与上面的JIRA是封闭的 - 重复。这不是很准确,因为CLI和网页可以在容器完成后获取日志,但上面的REST服务不能。