This project is to improve the TrafficServer user interface to make it more accessible to new users and generally easier to work with.

Documentation

All commands that users are expected to invoke should have manual pages. The manual pages should be up to date and accurate. Manual pages should be installed and shipped in source and binary distributions. The traffic_line subcommands should be coalesced into a single page. It's unlikely that anyone doing "man exit" is looking for the traffic_line subcommand.

Commands should be "self-documenting" as much as possible.

Configuration files should have man pages.

Finally, the html-ized version of the man pages should be linked from the administration guide and accessible from trafficserver.apache.org/docs.

https://issues.apache.org/jira/browse/TS-764

Command option consistency

I haven't done any comparisons, but I need to verity that the existing commands have a consistent interface and use similar options. Users should be able to easily understand how to drive the various commands. Might be binary compatibility implications.

Hiding unnecessary content

All content that users should not directly interact with should be in the $PATH. This means that commands like traffic_server should move to libexec.

Renaming user commands

I would like to rename some of the commands, eg. traffic_sac. This raises a binary compatibility problem that might not be surmountable. Generating consensus will be a problem (smile)

Reducing the number of commands

Are there opportunities to reduce the number of commands a TrafficServer user needs to know? For example, do we really need traffic_line and traffic_shell?

Improve error messages and behaviour

For example:

blacko:~ jpeach$ sudo /opt/ats/bin/traffic_shell 
[connect] ERROR (main_socket_fd 3): No such file or directory
TSInit 5: Failed to initialize MgmtAPI in /opt/ats/var/trafficserver
[connect] ERROR (main_socket_fd 23): No such file or directory
% [connect] ERROR (main_socket_fd 25): No such file or directory
[connect] ERROR (main_socket_fd 25): No such file or directory
[connect] ERROR (main_socket_fd 25): No such file or directory
...

Huh?

Bundled plugins

Mature plugins from the plugins tree should be migrated to the traffic server tree and included in the release so that users can easily adopt them. Need to confirm with packagers that this is desirable.

Plugins should have their own man pages documenting behaviour and configuration.