[ 
https://issues.apache.org/jira/browse/YARN-1080?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13753222#comment-13753222
 ] 

Xuan Gong commented on YARN-1080:
---------------------------------

bq.You should use Option.setRequired() instead of hardcoding app-id.

You are saying the line ?
{code}
    formatter.printHelp("yarn logs -applicationId <application ID> [OPTIONS]", 
new Options());
{code}

This is just for printing message. (Try to print the help message as similar as 
proposed help message).
But for the option which will be actually used in command, the input parameter 
does be required.
{code}
    opts.addOption(APPLICATION_ID_OPTION, true, "ApplicationId (required)");
{code}

Added test case to test help message in the new patch
                
> Improve help message for $ yarn logs
> ------------------------------------
>
>                 Key: YARN-1080
>                 URL: https://issues.apache.org/jira/browse/YARN-1080
>             Project: Hadoop YARN
>          Issue Type: Improvement
>          Components: client
>            Reporter: Tassapol Athiapinya
>            Assignee: Xuan Gong
>         Attachments: YARN-1080.1.patch, YARN-1080.2.patch
>
>
> There are 2 parts I am proposing in this jira. They can be fixed together in 
> one patch.
> 1. Standardize help message for required parameter of $ yarn logs
> YARN CLI has a command "logs" ($ yarn logs). The command always requires a 
> parameter of "-applicationId <arg>". However, help message of the command 
> does not make it clear. It lists -applicationId as optional parameter. If I 
> don't set it, YARN CLI will complain this is missing. It is better to use 
> standard required notation used in other Linux command for help message. Any 
> user familiar to the command can understand that this parameter is needed 
> more easily.
> {code:title=current help message}
> -bash-4.1$ yarn logs
> usage: general options are:
>  -applicationId <arg>   ApplicationId (required)
>  -appOwner <arg>        AppOwner (assumed to be current user if not
>                         specified)
>  -containerId <arg>     ContainerId (must be specified if node address is
>                         specified)
>  -nodeAddress <arg>     NodeAddress in the format nodename:port (must be
>                         specified if container id is specified)
> {code}
> {code:title=proposed help message}
> -bash-4.1$ yarn logs
> usage: yarn logs -applicationId <application ID> [OPTIONS]
> general options are:
>  -appOwner <arg>        AppOwner (assumed to be current user if not
>                         specified)
>  -containerId <arg>     ContainerId (must be specified if node address is
>                         specified)
>  -nodeAddress <arg>     NodeAddress in the format nodename:port (must be
>                         specified if container id is specified)
> {code}
> 2. Add description for help command. As far as I know, a user cannot get logs 
> for running job. Since I spent some time trying to get logs of running 
> applications, it should be nice to say this in command description.
> {code:title=proposed help}
> Retrieve logs for completed/killed YARN application
> usage: general options are...
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to