[ https://issues.apache.org/jira/browse/KNOX-1023?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16177072#comment-16177072 ]
Sandeep More commented on KNOX-1023: ------------------------------------ Hello [~vaibhavb] I am finding it a bit hard to follow, can you add your example topology file and briefly describe your cluster, this would greatly help me in testing out the patch. > nodemanager log links for a running job not working through YARNUI > ------------------------------------------------------------------ > > Key: KNOX-1023 > URL: https://issues.apache.org/jira/browse/KNOX-1023 > Project: Apache Knox > Issue Type: Bug > Affects Versions: 0.13.0 > Reporter: vaibhav beriwala > Fix For: 0.14.0 > > Attachments: KNOX-1023.patch > > > When nodemanager links are accessed through YARNUI service, it requires the > host and port to be appended in the URI , something like: > {code:java} > https://host:8443/gateway/sandbox/yarn/nodemanager/node/containerlogs/container_e02_1498543212255_0001_01_000001/user?host=nm-host&port=8042 > {code} > When I'm coming from the RM page, this link is rendered as an absolute one, > so the rewrite rule works fine and appends the host and port. However, when > I'm on the NM page itself, the URLs are not absolute(the URL's on NM page are > relative), so a different rewrite rule applies: > {code:java} > DEBUG hadoop.gateway (UrlRewriteProcessor.java:rewrite(164)) - Rewrote URL: > /node/containerlogs/container_e01_1498485266952_0006_01_000001/hiyer > qa3july/stderr/?start=-4096, direction: OUT via implicit rule: > YARNUI/yarn/outbound/node to URL: > https://host:8443/gateway/sandbox/yarn/node/containerlogs/container_e01_1498485266952_0006_01_000001/user/stderr > {code} > As you can see, this link does not contain the host=nm-host&port=8042 at the > end of query string, so it does not work. This affects log links for running > tasks, and links for the nodemanager itself. > So, the links on NM page of type > {code:java} > href=/syslog > {code} > gets transformed to > {code:java} > https://host:8443/gateway/sandbox/yarn/nodemanager/node/containerlogs/container_e02_1498543212255_0001_01_000001/user/syslog > {code} > whereas it should have been transformed to > {code:java} > https://host:8443/gateway/sandbox/yarn/nodemanager/node/containerlogs/container_e02_1498543212255_0001_01_000001/user/syslog?host=nm-host&port=8042 > {code} > One possible solution I could think of is appending the query string of the > *current* page to the link, but I couldn't see how to do that in a rewrite > rule. > Also, if you can provide some code pointers I may look into it. :) -- This message was sent by Atlassian JIRA (v6.4.14#64029)