### Description

As we are about to start leveraging `Weight#count` to compute total hit counts (https://github.com/elastic/elasticsearch/pull/84778) and aggregation counts (https://github.com/elastic/elasticsearch/pull/81322), we should start instrumenting it so that we can get information about time spent in `Weight#count`.
server/src/test/java/org/elasticsearch/search/profile/query/QueryProfilerTests.java
final int numDocs = TestUtil.nextInt(random(), 1, 20);
        for (int i = 0; i < numDocs; ++i) {
            final int numHoles = random().nextInt(5);
            for (int j = 0; j < numHoles; ++j) {
                w.addDocument(new Document());
            }
            Document doc = new Document();
            doc.add(new StringField("foo", "bar", Store.NO));
            w.addDocument(doc);
        }
        reader = w.getReader();
        w.close();
        searcher = new ContextIndexSearcher(
            reader,
            IndexSearcher.getDefaultSimilarity(),
            IndexSearcher.getDefaultQueryCache(),
            TrivialQueryCachingPolicy.ALWAYS,
            true
        );
    }
    @After
    public void checkNoCache() {
        LRUQueryCache cache = (LRUQueryCache) searcher.getQueryCache();
        assertThat(cache.getHitCount(), equalTo(0L));
        assertThat(cache.getCacheCount(), equalTo(0L));
        assertThat(cache.getTotalCount(), equalTo(cache.getMissCount()));
        assertThat(cache.getCacheSize(), equalTo(0L));
    }
    @AfterClass
    public static void cleanup() throws IOException {