arseLine :: Parser Metric
parseLine = do
    i <- string "PUTVAL" *> skipSpace *> identifier
    l <- skipSpace *> interval
    t <- skipSpace *> timestamp
    v <- value <* endOfLine
    return Metric { mIdentifier = i, mInterval = l, mTime = t,  mValue = v }

--
-- Parse a fragment in the following form
-- sirius.lhr.operationaldynamics.com/cpu-2/cpu-user
--

parseLine :: Parser Metric
parseLine = do
    i <- string "PUTVAL" *> skipSpace *> identifier
    l <- skipSpace *> interval
    t <- skipSpace *> timestamp
    v <- value <* endOfLine
    return Metric { mIdentifier = i, mInterval = l, mTime = t,  mValue = v }

--
-- Parse a fragment in the following form
-- sirius.lhr.operationaldynamics.com/cpu-2/cpu-user
--
parseLine = do
    i <- string "PUTVAL" *> skipSpace *> identifier
    l <- skipSpace *> interval
    t <- skipSpace *> timestamp
    v <- value <* endOfLine
    return Metric { mIdentifier = i, mInterval = l, mTime = t,  mValue = v }

--
-- Parse a fragment in the following form
-- sirius.lhr.operationaldynamics.com/cpu-2/cpu-user
--