hook 运行时直接输出

- 子进程 stdout 和 stderr 直接挂到父进程
- 子进程出错时，父进程返回子进程状态码
`logger.Error` has the same purpose with `log.Fatal` standard library. And, it seemed that `logger.Errorln` lost the `os.Exit(1)`