collect Performance Data

@Query(value = ""SELECT * FROM " + PERFORMANCE_ANALYTICS_KEY + " WHERE " + APPLICATION_IDENTIFIER_KEY + "=:" + APPLICATION_IDENTIFIER_KEY + " AND " + PLATFORM_KEY + "=:" + PLATFORM_KEY + " AND " + PERFORMANCE_ANALYTIC_TYPE_KEY + "=:#{#" + PERFORMANCE_ANALYTIC_TYPE_KEY + ".name()}" + " AND " + CREATION_DATE_KEY + " BETWEEN :" + INITIAL_DATE_KEY + " AND :" + FINAL_DATE_KEY + " AND (" + "COALESCE(:" + VERSION_FILTERS_KEY + ") IS NULL OR " + APP_VERSION_KEY + " IN (:" + VERSION_FILTERS_KEY + ")" + ")" + " ORDER BY " + APP_VERSION_KEY", nativeQuery = true )
abstract fun collectPerformanceData(@Param(value = "application_id") applicationId: String, @Param(value = "platform") platform: String, @Param(value = "performance_analytic_type") type: PerformanceAnalytic.PerformanceAnalyticType, @Param(value = "initial_date") initialDate: Long, @Param(value = "final_date") finalDate: Long, @Param(value = "versions") versions: List<String>): List<PerformanceAnalytic>

Method to retrieve the collected performance data from the database

Return

the performance data collected as List of PerformanceAnalytic

Parameters

applicationId

The application identifier related to the performance data collected

platform

The platform related to the performance data collected

type

The specific performance data to retrieve

initialDate

The initial date to retrieve the data

finalDate

The final date allowed to retrieve the data

versions

The versions sample of the collected data to retrieve