Rewrite most of Promise and Callback
Update metrics config