Skip to content

Commit bf2e6fb

Browse files
committed
refactor(metrics): update deployment metrics structures and date handling, enhance query ordering logic in repository
1 parent cacf1b0 commit bf2e6fb

4 files changed

Lines changed: 13 additions & 20 deletions

File tree

lens/api/RestHandler.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -164,7 +164,7 @@ func (impl *RestHandlerImpl) GetBulkDeploymentMetrics(w http.ResponseWriter, r *
164164
return
165165
}
166166

167-
if bulkRequest.From == "" || bulkRequest.To == "" {
167+
if bulkRequest.From == nil || bulkRequest.To == nil {
168168
impl.writeJsonResp(w, fmt.Errorf("from and to dates are required"), nil, http.StatusBadRequest)
169169
return
170170
}

lens/internal/dto/deploymentMetricsDto.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -55,19 +55,19 @@ type MetricRequest struct {
5555
}
5656

5757
type AppEnvPair struct {
58-
AppId int `json:"app_id"`
59-
EnvId int `json:"env_id"`
58+
AppId int `json:"appId"`
59+
EnvId int `json:"envId"`
6060
}
6161

6262
type BulkMetricRequest struct {
6363
AppEnvPairs []AppEnvPair `json:"appEnvPairs"`
64-
From string `json:"from"`
65-
To string `json:"to"`
64+
From *time.Time `json:"from"`
65+
To *time.Time `json:"to"`
6666
}
6767

6868
type AppEnvMetrics struct {
69-
AppId int `json:"app_id"`
70-
EnvId int `json:"env_id"`
69+
AppId int `json:"appId"`
70+
EnvId int `json:"envId"`
7171
Metrics *Metrics `json:"metrics"`
7272
Error string `json:"error,omitempty"`
7373
}

lens/internal/sql/AppReleaseRepository.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,7 @@ func (impl *AppReleaseRepositoryImpl) GetReleaseBetweenBulk(appEnvPairs []dto.Ap
165165
whereClause := "(" + strings.Join(conditions, " OR ") + ")"
166166
query = query.Where(whereClause, args...)
167167

168-
err := query.Order("app_id, environment_id, id desc").Select()
168+
err := query.Order("app_id").Order("environment_id").Order("id desc").Select()
169169
return appReleases, err
170170
}
171171

lens/pkg/DeploymentMetricService.go

Lines changed: 5 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -104,22 +104,15 @@ func (impl DeploymentMetricServiceImpl) GetBulkDeploymentMetrics(request *dto.Bu
104104
return &dto.BulkMetricsResponse{Results: []dto.AppEnvMetrics{}}, nil
105105
}
106106

107-
response := &dto.BulkMetricsResponse{
108-
Results: make([]dto.AppEnvMetrics, len(request.AppEnvPairs)),
109-
}
110-
111-
return impl.getBulkDeploymentMetricsWithBulkQueries(request, response)
107+
return impl.getBulkDeploymentMetricsWithBulkQueries(request)
112108
}
113109

114-
func (impl DeploymentMetricServiceImpl) getBulkDeploymentMetricsWithBulkQueries(request *dto.BulkMetricRequest, response *dto.BulkMetricsResponse) (*dto.BulkMetricsResponse, error) {
115-
from, to, err := utils2.ParseDateRange(request.From, request.To)
116-
if err != nil {
117-
impl.logger.Errorw("error parsing date range", "from", request.From, "to", request.To, "err", err)
118-
return nil, err
110+
func (impl DeploymentMetricServiceImpl) getBulkDeploymentMetricsWithBulkQueries(request *dto.BulkMetricRequest) (*dto.BulkMetricsResponse, error) {
111+
response := &dto.BulkMetricsResponse{
112+
Results: make([]dto.AppEnvMetrics, len(request.AppEnvPairs)),
119113
}
120-
121114
// Step 1: Get all releases for all app-env pairs in one query
122-
allReleases, err := impl.appReleaseRepository.GetReleaseBetweenBulk(request.AppEnvPairs, from, to)
115+
allReleases, err := impl.appReleaseRepository.GetReleaseBetweenBulk(request.AppEnvPairs, *request.From, *request.To)
123116
if err != nil {
124117
impl.logger.Errorw("error getting bulk releases from db", "err", err)
125118
return nil, err

0 commit comments

Comments
 (0)