Search in sources :

Example 1 with AverageResponseTimeResponse

use of io.gravitee.repository.healthcheck.query.responsetime.AverageResponseTimeResponse in project gravitee-management-rest-api by gravitee-io.

the class HealthCheckServiceImpl method getResponseTime.

@Override
public ApiMetrics getResponseTime(String api, String field) {
    logger.debug("Run health response-time query for API '{}'", api);
    try {
        ApiEntity apiEntity = apiService.findById(api);
        AverageResponseTimeResponse response = healthCheckRepository.query(QueryBuilders.responseTime().api(api).field(AverageResponseTimeQuery.Field.valueOf(field)).build());
        return convert(apiEntity, response.getEndpointResponseTimes(), field);
    } catch (Exception ex) {
        logger.error("An unexpected error occurs while searching for health data.", ex);
        return null;
    }
}
Also used : AverageResponseTimeResponse(io.gravitee.repository.healthcheck.query.responsetime.AverageResponseTimeResponse) ApiEntity(io.gravitee.management.model.ApiEntity) AnalyticsException(io.gravitee.repository.analytics.AnalyticsException) TechnicalManagementException(io.gravitee.management.service.exceptions.TechnicalManagementException)

Aggregations

ApiEntity (io.gravitee.management.model.ApiEntity)1 TechnicalManagementException (io.gravitee.management.service.exceptions.TechnicalManagementException)1 AnalyticsException (io.gravitee.repository.analytics.AnalyticsException)1 AverageResponseTimeResponse (io.gravitee.repository.healthcheck.query.responsetime.AverageResponseTimeResponse)1