我想按主机名过滤对Google http loadbalancer的请求。 http负载平衡器生成可搜索的堆栈驱动程序日志。我想我可以像这样搜索httpRequest.requestUrl的开头:
resource.type="http_load_balancer"
httpRequest.requestUrl=starts_with("https://example.com")
我认为这在阅读https://cloud.google.com/monitoring/api/v3/filters之后会起作用。不幸的是,这返回了Invalid request: Non-Global functions are currently unsupported
我不介意是否必须对http和https分别进行搜索。
答案 0 :(得分:1)
您正在查看的URL用于Stackdriver Monitoring。我假设您正在寻找在Stackdriver Logging上对其进行过滤的方法。
要在Stackdriver Logging中过滤“ http”和“ https”,请使用高级过滤器,如下所示。请注意,与httpRequest.requestUrl匹配的运算符是冒号:
,而不是等号=
。
对于HTTP
resource.type="http_load_balancer"
httpRequest.requestUrl:"http://example.com"
对于HTTPS
resource.type="http_load_balancer"
httpRequest.requestUrl:"https://example.com"
请注意,这将在整个字段 httpRequest.requestUrl中搜索给定的字符串。从技术上讲,这是错误的,但是对于大多数主机名搜索来说,它应该可以正常工作。