Skip to content

Commit

Permalink
W-13680300: updates for carbonapi
Browse files Browse the repository at this point in the history
  • Loading branch information
pmoineausf committed Jul 7, 2023
1 parent ea6ddba commit acc9a4e
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,13 @@ protected void doGet( HttpServletRequest req, HttpServletResponse res )
{
res.setContentType( "application/json" );
}
else if ( protobuf )
{
LOG.info( "carbonapi request: found protobuf request" );
res.setContentType( "application/protobuf" );
target = req.getParameter( "query" );
LOG.info( "carbonapi request: query: " + target + " --- blacklist: " + queryBlacklist );
}
else
{
res.setContentType( "application/pickle" );
Expand Down Expand Up @@ -144,9 +151,11 @@ protected void doGet( HttpServletRequest req, HttpServletResponse res )
}
else if ( protobuf )
{
LOG.info( "carbonapi request: processing request" );
List<Series> seriesList = store.fetchSeriesData( new Query( target, Integer.parseInt( from ),
Integer.parseInt( until ), now, System.currentTimeMillis() ) );

LOG.info( "carbonapi request: formatting response" );
OutputStream output = res.getOutputStream();

List<MetricsResponse.Series> metricsSeriesList = new ArrayList<MetricsResponse.Series>();
Expand All @@ -155,7 +164,9 @@ else if ( protobuf )
List<MetricsResponse.Value> valuesList = new ArrayList<MetricsResponse.Value>();
for ( Double value : series.values )
{
valuesList.add( MetricsResponse.Value.newBuilder().setValue( value ).build() );

valuesList.add(
MetricsResponse.Value.newBuilder().setValue( value == null ? (double) 0 : value ).build() );
}
MetricsResponse.Series metricsSeries =
MetricsResponse.Series.newBuilder().setName( series.name ).setStart( series.start )
Expand All @@ -167,15 +178,22 @@ else if ( protobuf )
MetricsResponse.SeriesList response =
MetricsResponse.SeriesList.newBuilder().addAllSeriesList( metricsSeriesList ).build();

LOG.info( "carbonapi request: done formatting response" );

try
{
LOG.info( "carbonapi request: writing response" );
response.writeTo( output );
}
catch ( Exception e )
{
LOG.error( "carbonapi request: error writing response", e.getMessage() );
}
finally
{
output.close();
}
}
}
else
{
ResponseStream seriesStream = new GraphitePickler( false, res.getOutputStream() );
Expand Down
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
version=1.1.29
version=pmoineau.W-13680300.carbonj-protobuf.v1.1.29-SNAPSHOT
org.gradle.jvmargs=-Xmx2g -XX:MaxPermSize=2048m
org.gradle.daemon=true
ccGradlePluginVersion = 3.0.3

0 comments on commit acc9a4e

Please sign in to comment.