在使用Prometheus的警报规则时,如果包含元字符(如句点、小写字母d等)时可能会遇到的问题
由于在编写警报规则的表达式时遇到了困难,花费了几个小时,我只好舍弃不做了。
按照下面的方式,我们使用了以下的RE2来进行正则表达式处理。
但是,若是使用正則表達式的匹配器,在包含元字符時,不能像下面這樣做。
{instance =~ ".*\.recovery\d*\..*"}
当你看到这个地方时就会知道发生错误的情况。
需要将转义字符进行双重转义。
{instance =~ ".*\\.recovery\\d*\\..*"}
成功的样子就在这里。
需要转义斜杠以识别为转义字符的原因是…。
在Ansible模板中经常会遇到的问题。