@@ -3,14 +3,15 @@ import dayjs from "dayjs";
33import _ from "lodash" ;
44import { config } from "../configs/Config" ;
55import { dataLineageSuccessQuery , generateConnectorQuery , generateDatasetQueryCallsQuery , generateDedupFailedQuery , generateDenormFailedQuery , generateTimeseriesQuery , generateTimeseriesQueryEventsPerHour , generateTotalQueryCallsQuery , generateTransformationFailedQuery , processingTimeQuery , totalEventsQuery , totalFailedEventsQuery } from "../controllers/DatasetMetrics/queries" ;
6+ import { druidHttpService } from "../connections/druidConnection" ;
67const druidPort = _ . get ( config , "query_api.druid.port" ) ;
78const druidHost = _ . get ( config , "query_api.druid.host" ) ;
89const nativeQueryEndpoint = `${ druidHost } :${ druidPort } ${ config . query_api . druid . native_query_path } ` ;
910const prometheusEndpoint = `${ config . query_api . prometheus . url } /api/v1/query_range` ;
1011
1112export const getDataFreshness = async ( dataset_id : string , intervals : string , defaultThreshold : number ) => {
1213 const queryPayload = processingTimeQuery ( intervals , dataset_id ) ;
13- const druidResponse = await axios . post ( nativeQueryEndpoint , queryPayload ?. query ) ;
14+ const druidResponse = await druidHttpService . post ( nativeQueryEndpoint , queryPayload ?. query ) ;
1415 const avgProcessingTime = _ . get ( druidResponse , "data[0].average_processing_time" , 0 ) ;
1516 const freshnessStatus = avgProcessingTime < defaultThreshold ? "Healthy" : "Unhealthy" ;
1617
@@ -41,8 +42,8 @@ export const getDataObservability = async (dataset_id: string, intervals: string
4142 const totalQueryCallsAtDatasetLevel = generateDatasetQueryCallsQuery ( dataset_id , config ?. data_observability ?. data_out_query_time_period ) ;
4243
4344 const [ totalEventsResponse , totalFailedEventsResponse , totalApiCallsResponse , totalCallsAtDatasetLevelResponse ] = await Promise . all ( [
44- axios . post ( nativeQueryEndpoint , totalEventsPayload ) ,
45- axios . post ( nativeQueryEndpoint , totalFailedEventsPayload ) ,
45+ druidHttpService . post ( nativeQueryEndpoint , totalEventsPayload ) ,
46+ druidHttpService . post ( nativeQueryEndpoint , totalFailedEventsPayload ) ,
4647 axios . request ( { url : prometheusEndpoint , method : "GET" , params : totalQueryCalls } ) ,
4748 axios . request ( { url : prometheusEndpoint , method : "GET" , params : totalQueryCallsAtDatasetLevel } )
4849 ] ) ;
@@ -110,13 +111,13 @@ export const getDataVolume = async (dataset_id: string, volume_by_days: number,
110111 previousHourResponse , previousDayResponse , previousWeekResponse ,
111112 nDaysResponse
112113 ] = await Promise . all ( [
113- axios . post ( nativeQueryEndpoint , currentHourPayload ) ,
114- axios . post ( nativeQueryEndpoint , currentDayPayload ) ,
115- axios . post ( nativeQueryEndpoint , currentWeekPayload ) ,
116- axios . post ( nativeQueryEndpoint , previousHourPayload ) ,
117- axios . post ( nativeQueryEndpoint , previousDayPayload ) ,
118- axios . post ( nativeQueryEndpoint , previousWeekPayload ) ,
119- axios . post ( nativeQueryEndpoint , nDaysPayload )
114+ druidHttpService . post ( nativeQueryEndpoint , currentHourPayload ) ,
115+ druidHttpService . post ( nativeQueryEndpoint , currentDayPayload ) ,
116+ druidHttpService . post ( nativeQueryEndpoint , currentWeekPayload ) ,
117+ druidHttpService . post ( nativeQueryEndpoint , previousHourPayload ) ,
118+ druidHttpService . post ( nativeQueryEndpoint , previousDayPayload ) ,
119+ druidHttpService . post ( nativeQueryEndpoint , previousWeekPayload ) ,
120+ druidHttpService . post ( nativeQueryEndpoint , nDaysPayload )
120121 ] ) ;
121122 const currentHourCount = _ . get ( currentHourResponse , "data[0].result.count" ) || 0 ;
122123 const currentDayCount = _ . get ( currentDayResponse , "data[0].result.count" ) || 0 ;
@@ -158,14 +159,14 @@ export const getDataLineage = async (dataset_id: string, intervals: string) => {
158159 transformationSuccessResponse , dedupSuccessResponse , denormSuccessResponse ,
159160 totalValidationResponse , totalValidationFailedResponse , transformationFailedResponse , dedupFailedResponse , denormFailedResponse
160161 ] = await Promise . all ( [
161- axios . post ( nativeQueryEndpoint , transformationSuccessPayload ) ,
162- axios . post ( nativeQueryEndpoint , dedupSuccessPayload ) ,
163- axios . post ( nativeQueryEndpoint , denormSuccessPayload ) ,
164- axios . post ( nativeQueryEndpoint , totalValidationPayload ) ,
165- axios . post ( nativeQueryEndpoint , totalValidationFailedPayload ) ,
166- axios . post ( nativeQueryEndpoint , transformationFailedPayload ) ,
167- axios . post ( nativeQueryEndpoint , dedupFailedPayload ) ,
168- axios . post ( nativeQueryEndpoint , denormFailedPayload )
162+ druidHttpService . post ( nativeQueryEndpoint , transformationSuccessPayload ) ,
163+ druidHttpService . post ( nativeQueryEndpoint , dedupSuccessPayload ) ,
164+ druidHttpService . post ( nativeQueryEndpoint , denormSuccessPayload ) ,
165+ druidHttpService . post ( nativeQueryEndpoint , totalValidationPayload ) ,
166+ druidHttpService . post ( nativeQueryEndpoint , totalValidationFailedPayload ) ,
167+ druidHttpService . post ( nativeQueryEndpoint , transformationFailedPayload ) ,
168+ druidHttpService . post ( nativeQueryEndpoint , dedupFailedPayload ) ,
169+ druidHttpService . post ( nativeQueryEndpoint , denormFailedPayload )
169170 ] ) ;
170171
171172 // success at each level
@@ -198,7 +199,7 @@ export const getDataLineage = async (dataset_id: string, intervals: string) => {
198199
199200export const getConnectors = async ( dataset_id : string , intervals : string ) => {
200201 const connectorQueryPayload = generateConnectorQuery ( intervals , dataset_id ) ;
201- const connectorResponse = await axios . post ( nativeQueryEndpoint , connectorQueryPayload ) ;
202+ const connectorResponse = await druidHttpService . post ( nativeQueryEndpoint , connectorQueryPayload ) ;
202203 const connectorsData = _ . get ( connectorResponse , "data[0].result" , [ ] ) ;
203204 const result = {
204205 category : "connectors" ,
@@ -217,8 +218,8 @@ export const getDataQuality = async (dataset_id: string, intervals: string) => {
217218 const totalValidationFailedPayload = dataLineageSuccessQuery ( intervals , dataset_id , "error_pdata_status" , "failed" ) ;
218219 const [ totalValidationResponse , totalValidationFailedResponse ,
219220 ] = await Promise . all ( [
220- axios . post ( nativeQueryEndpoint , totalValidationPayload ) ,
221- axios . post ( nativeQueryEndpoint , totalValidationFailedPayload ) ,
221+ druidHttpService . post ( nativeQueryEndpoint , totalValidationPayload ) ,
222+ druidHttpService . post ( nativeQueryEndpoint , totalValidationFailedPayload ) ,
222223 ] ) ;
223224 const totalValidationCount = _ . get ( totalValidationResponse , "data[0].result.count" ) || 0 ;
224225 const totalValidationFailedCount = _ . get ( totalValidationFailedResponse , "data[0].result.count" ) || 0 ;
0 commit comments