Начало и конец строки, увы, не являются символами (^ и $), посему для единообразия стоит добавить \n в начале и в конце data. (а ещё стоит экранировать всякие символы)
Most of the implementation is in MDBalancer. Metrics are passed to the balancer policies via the Lua stack and a list of loads is returned back to MDBalancer.