使用正则表达式 (RegEx) 作为过滤器在 GCP 日志资源管理器中编写查询:
我需要过滤 query_name 中包含单词“stat”的任何字符串。
尝试使用 SQL 方式和通配符:
logName="projects/my_project/logs/my_env-production"
labels.query_name RLIKE "stat"
logName="projects/my_project/logs/my_env-production"
labels.query_name LIKE "%stat%"
logName="projects/my_project/logs/my_env-production"
labels.query_name="%stat%"
而 RegEx 只是为了测试“.”是否为任意字母:
logName="projects/my_project/logs/my_env-production"
labels.query_name LIKE ".stat."
输出No data found
在左侧窗格中,输出列表为空。
答案1
如果您想过滤 RegEx,则需要使用与基于日志的指标或 Grafana 中相同的技巧。
logName="projects/my_project/logs/my_env-production"
labels.query_name=~".stat."
或者采取:
labels.query_name!~".stat."
以避免使用 RegEx。
(如果您想要没有 RegEx 的,它是“=”和“!=”,这是另一种模式,这就是为什么您可能无法自己找到 RegEx)。