The GitHub Actions job "CI" on grails-core.git/feat/gsp-rendering-observability 
has succeeded.
Run started by GitHub user codeconsole (triggered by codeconsole).

Head commit for run:
36a810136f9253f7063fa0e2e9538287d7b8955b / Scott Murphy Heiberg 
<[email protected]>
GSP observability: track production caches, not the dev compile cache; gsp.name 
high-cardinality

The gsp.template.cache hit/miss counter lived on GroovyPagesTemplateEngine's 
runtime-compile cache, which is development-only: a precompiled production 
deployment serves GSPs from AOT-compiled classes and bypasses that cache, so it 
can never register a hit there (and the higher layers intercept any second 
lookup). Move hit/miss to the caches actually consulted on the request path in 
a deployed app -- GroovyPagesTemplateRenderer.templateCache (cache=template) 
and GroovyPageViewResolver.viewCache (cache=view) -- as the 
gsp.cache{cache,result} counter (new GroovyPageCacheMetrics helper).

Make gsp.name high-cardinality (span attribute) instead of low-cardinality 
(metric tag): on an app with many GSPs it exploded the render-timer series 
count. error remains the only low-cardinality tag.

gsp.view/gsp.template/gsp.layout render timers are unchanged. gsp.compile is 
kept and documented as a dev/cold-start signal -- its presence on a precompiled 
production deployment flags a view that is not precompiled. Adds api dependency 
io.micrometer:micrometer-core to grails-web-gsp (MeterRegistry now appears in 
its setMeterRegistry ABI).

Report URL: https://github.com/apache/grails-core/actions/runs/27082155115

With regards,
GitHub Actions via GitBox

Reply via email to