prometheus: Use output stream to return the metrics
prometheus: Use output stream to return the metrics

Generating the metrics reply can take a long time, to reduce the load on
the system the prometheus can use the output stream api.

This patch changes the message creation to use the output stream.
This both reduce the buffer size needed and make the prometheus yield so
it will not block the shard.

The patch is partially indented on purpose and an indentation patch will
follow.

See scylladb/scylla#2475

Signed-off-by: Amnon Heiman <ed5fc74c4692051ad0b19749fd7cea6ec2d74b9e@scylladb.com>

cloudius-systems/seastar,avikivity/seastar,dreamsxin/seastar,dreamsxin/seastar,cloudius-systems/seastar,syuu1228/seastar,dreamsxin/seastar,scylladb/seastar,scylladb/seastar,syuu1228/seastar,scylladb/seastar,avikivity/seastar,avikivity/seastar,syuu1228/seastar,cloudius-systems/seastar