govaluate
Arbitrary expression evaluation for golang
... for alerting are different for each monitor. A lot of people wind up writing their own half-baked style of evaluation language that fits their needs but isn't complete. Or they wind up baking the expression into the actual executable, even if they know it's subject to change. These strategies may work, but they take time to implement, time for users to learn, and induce technical debt as requirements change.