Recently I had to add an audit feature in a command line tool that I developed. The requirement is very simple, we need to audit any command that was issued with the tool. The audit log should contain the Time stamp, the logged in user’s id, the terminal he/she logged in from, the command name and any arguments that were passed to the command.