I did a test with this query "meter('http.server.requests').tag('method','GET').tag('status','200').measurement('count') > 2" . This expression matches with more than one meter if you do requests for different uris. The expression parser in your starter just only takes into account the first meter in the collection so it's not right. It should group all the meters that match the query, like the actuator metrics endpoint does (http://localhost:8080/actuator/metrics/http.server.requests?tag=method:GET&tag=status:200). Maybe the problem is the RequiredSearch java class from micrometer library.