metric push logic moved into api