2323import io .prometheus .metrics .model .snapshots .StateSetSnapshot ;
2424import io .prometheus .metrics .model .snapshots .SummarySnapshot ;
2525import io .prometheus .metrics .model .snapshots .UnknownSnapshot ;
26+ import java .io .BufferedWriter ;
2627import java .io .IOException ;
2728import java .io .OutputStream ;
2829import java .io .OutputStreamWriter ;
30+ import java .io .Writer ;
2931import java .nio .charset .StandardCharsets ;
3032import java .util .List ;
3133
@@ -65,7 +67,7 @@ public String getContentType() {
6567
6668 @ Override
6769 public void write (OutputStream out , MetricSnapshots metricSnapshots ) throws IOException {
68- OutputStreamWriter writer = new OutputStreamWriter (out , StandardCharsets .UTF_8 );
70+ Writer writer = new BufferedWriter ( new OutputStreamWriter (out , StandardCharsets .UTF_8 ) );
6971 for (MetricSnapshot snapshot : metricSnapshots ) {
7072 if (!snapshot .getDataPoints ().isEmpty ()) {
7173 if (snapshot instanceof CounterSnapshot ) {
@@ -89,8 +91,7 @@ public void write(OutputStream out, MetricSnapshots metricSnapshots) throws IOEx
8991 writer .flush ();
9092 }
9193
92- private void writeCounter (OutputStreamWriter writer , CounterSnapshot snapshot )
93- throws IOException {
94+ private void writeCounter (Writer writer , CounterSnapshot snapshot ) throws IOException {
9495 MetricMetadata metadata = snapshot .getMetadata ();
9596 writeMetadata (writer , "counter" , metadata );
9697 for (CounterSnapshot .CounterDataPointSnapshot data : snapshot .getDataPoints ()) {
@@ -101,7 +102,7 @@ private void writeCounter(OutputStreamWriter writer, CounterSnapshot snapshot)
101102 }
102103 }
103104
104- private void writeGauge (OutputStreamWriter writer , GaugeSnapshot snapshot ) throws IOException {
105+ private void writeGauge (Writer writer , GaugeSnapshot snapshot ) throws IOException {
105106 MetricMetadata metadata = snapshot .getMetadata ();
106107 writeMetadata (writer , "gauge" , metadata );
107108 for (GaugeSnapshot .GaugeDataPointSnapshot data : snapshot .getDataPoints ()) {
@@ -115,8 +116,7 @@ private void writeGauge(OutputStreamWriter writer, GaugeSnapshot snapshot) throw
115116 }
116117 }
117118
118- private void writeHistogram (OutputStreamWriter writer , HistogramSnapshot snapshot )
119- throws IOException {
119+ private void writeHistogram (Writer writer , HistogramSnapshot snapshot ) throws IOException {
120120 MetricMetadata metadata = snapshot .getMetadata ();
121121 if (snapshot .isGaugeHistogram ()) {
122122 writeMetadata (writer , "gaugehistogram" , metadata );
@@ -128,7 +128,7 @@ private void writeHistogram(OutputStreamWriter writer, HistogramSnapshot snapsho
128128 }
129129
130130 private void writeClassicHistogramBuckets (
131- OutputStreamWriter writer ,
131+ Writer writer ,
132132 MetricMetadata metadata ,
133133 String countSuffix ,
134134 String sumSuffix ,
@@ -174,8 +174,7 @@ private ClassicHistogramBuckets getClassicBuckets(
174174 }
175175 }
176176
177- private void writeSummary (OutputStreamWriter writer , SummarySnapshot snapshot )
178- throws IOException {
177+ private void writeSummary (Writer writer , SummarySnapshot snapshot ) throws IOException {
179178 boolean metadataWritten = false ;
180179 MetricMetadata metadata = snapshot .getMetadata ();
181180 for (SummarySnapshot .SummaryDataPointSnapshot data : snapshot .getDataPoints ()) {
@@ -215,7 +214,7 @@ private void writeSummary(OutputStreamWriter writer, SummarySnapshot snapshot)
215214 }
216215 }
217216
218- private void writeInfo (OutputStreamWriter writer , InfoSnapshot snapshot ) throws IOException {
217+ private void writeInfo (Writer writer , InfoSnapshot snapshot ) throws IOException {
219218 MetricMetadata metadata = snapshot .getMetadata ();
220219 writeMetadata (writer , "info" , metadata );
221220 for (InfoSnapshot .InfoDataPointSnapshot data : snapshot .getDataPoints ()) {
@@ -225,8 +224,7 @@ private void writeInfo(OutputStreamWriter writer, InfoSnapshot snapshot) throws
225224 }
226225 }
227226
228- private void writeStateSet (OutputStreamWriter writer , StateSetSnapshot snapshot )
229- throws IOException {
227+ private void writeStateSet (Writer writer , StateSetSnapshot snapshot ) throws IOException {
230228 MetricMetadata metadata = snapshot .getMetadata ();
231229 writeMetadata (writer , "stateset" , metadata );
232230 for (StateSetSnapshot .StateSetDataPointSnapshot data : snapshot .getDataPoints ()) {
@@ -259,8 +257,7 @@ private void writeStateSet(OutputStreamWriter writer, StateSetSnapshot snapshot)
259257 }
260258 }
261259
262- private void writeUnknown (OutputStreamWriter writer , UnknownSnapshot snapshot )
263- throws IOException {
260+ private void writeUnknown (Writer writer , UnknownSnapshot snapshot ) throws IOException {
264261 MetricMetadata metadata = snapshot .getMetadata ();
265262 writeMetadata (writer , "unknown" , metadata );
266263 for (UnknownSnapshot .UnknownDataPointSnapshot data : snapshot .getDataPoints ()) {
@@ -275,7 +272,7 @@ private void writeUnknown(OutputStreamWriter writer, UnknownSnapshot snapshot)
275272 }
276273
277274 private void writeCountAndSum (
278- OutputStreamWriter writer ,
275+ Writer writer ,
279276 MetricMetadata metadata ,
280277 DistributionDataPointSnapshot data ,
281278 String countSuffix ,
@@ -298,8 +295,7 @@ private void writeCountAndSum(
298295 }
299296 }
300297
301- private void writeCreated (
302- OutputStreamWriter writer , MetricMetadata metadata , DataPointSnapshot data )
298+ private void writeCreated (Writer writer , MetricMetadata metadata , DataPointSnapshot data )
303299 throws IOException {
304300 if (createdTimestampsEnabled && data .hasCreatedTimestamp ()) {
305301 writeNameAndLabels (writer , metadata .getPrometheusName (), "_created" , data .getLabels ());
@@ -312,13 +308,13 @@ private void writeCreated(
312308 }
313309 }
314310
315- private void writeNameAndLabels (
316- OutputStreamWriter writer , String name , String suffix , Labels labels ) throws IOException {
311+ private void writeNameAndLabels (Writer writer , String name , String suffix , Labels labels )
312+ throws IOException {
317313 writeNameAndLabels (writer , name , suffix , labels , null , 0.0 );
318314 }
319315
320316 private void writeNameAndLabels (
321- OutputStreamWriter writer ,
317+ Writer writer ,
322318 String name ,
323319 String suffix ,
324320 Labels labels ,
@@ -336,7 +332,7 @@ private void writeNameAndLabels(
336332 }
337333
338334 private void writeScrapeTimestampAndExemplar (
339- OutputStreamWriter writer , DataPointSnapshot data , Exemplar exemplar ) throws IOException {
335+ Writer writer , DataPointSnapshot data , Exemplar exemplar ) throws IOException {
340336 if (data .hasScrapeTimestamp ()) {
341337 writer .write (' ' );
342338 writeTimestamp (writer , data .getScrapeTimestampMillis ());
@@ -354,7 +350,7 @@ private void writeScrapeTimestampAndExemplar(
354350 writer .write ('\n' );
355351 }
356352
357- private void writeMetadata (OutputStreamWriter writer , String typeName , MetricMetadata metadata )
353+ private void writeMetadata (Writer writer , String typeName , MetricMetadata metadata )
358354 throws IOException {
359355 writer .write ("# TYPE " );
360356 writer .write (metadata .getPrometheusName ());
0 commit comments