From c51103344e20edb3f94b2ee5f5273c9efb5f2714 Mon Sep 17 00:00:00 2001 From: Peter Marton Date: Fri, 31 Jan 2025 11:29:38 -0800 Subject: [PATCH] feat(query): progress --- api/api.gen.go | 1659 ++++++++------- api/client/go/client.gen.go | 1865 ++++++++++------- api/client/javascript/pnpm-lock.yaml | 2 - api/client/javascript/src/client/schemas.ts | 144 ++ api/openapi.cloud.yaml | 114 + api/openapi.yaml | 114 + api/spec/src/cloud/main.tsp | 4 + api/spec/src/events.tsp | 10 + api/spec/src/info/main.tsp | 1 + api/spec/src/info/progress.tsp | 45 + api/spec/src/meters.tsp | 10 + app/common/config.go | 2 + app/common/progressmanager.go | 39 + app/common/streaming.go | 4 + app/config/config.go | 34 +- app/config/config_test.go | 4 + app/config/dedupe.go | 22 +- app/config/progressmanager.go | 43 + cmd/balance-worker/wire.go | 1 + cmd/balance-worker/wire_gen.go | 13 +- cmd/billing-worker/wire.go | 1 + cmd/billing-worker/wire_gen.go | 13 +- cmd/jobs/internal/wire.go | 1 + cmd/jobs/internal/wire_gen.go | 12 +- cmd/notification-service/wire.go | 1 + cmd/notification-service/wire_gen.go | 13 +- cmd/server/main.go | 1 + cmd/server/wire.go | 3 + cmd/server/wire_gen.go | 15 +- cmd/sink-worker/wire.go | 1 + cmd/sink-worker/wire_gen.go | 11 +- openmeter/progressmanager/adapter.go | 16 + openmeter/progressmanager/adapter/adapter.go | 61 + openmeter/progressmanager/adapter/noop.go | 16 + openmeter/progressmanager/adapter/progress.go | 64 + .../progressmanager/entity/progressmanager.go | 91 + openmeter/progressmanager/errors.go | 16 + .../progressmanager/httpdriver/errors.go | 19 + .../progressmanager/httpdriver/handler.go | 49 + .../progressmanager/httpdriver/progress.go | 70 + openmeter/progressmanager/service.go | 16 + openmeter/server/router/event.go | 50 +- openmeter/server/router/info.go | 6 + openmeter/server/router/meter_query.go | 1 + openmeter/server/router/router.go | 14 + openmeter/server/server_test.go | 2 + .../clickhouse/materialized_view/connector.go | 9 +- .../clickhouse/raw_events/connector.go | 118 +- .../clickhouse/raw_events/event_query.go | 49 +- .../clickhouse/raw_events/event_query_test.go | 26 +- .../clickhouse/raw_events/meter_query.go | 43 +- openmeter/streaming/connector.go | 34 +- openmeter/streaming/query_params.go | 64 + pkg/redis/config.go | 44 + 54 files changed, 3354 insertions(+), 1726 deletions(-) create mode 100644 api/spec/src/info/progress.tsp create mode 100644 app/common/progressmanager.go create mode 100644 app/config/progressmanager.go create mode 100644 openmeter/progressmanager/adapter.go create mode 100644 openmeter/progressmanager/adapter/adapter.go create mode 100644 openmeter/progressmanager/adapter/noop.go create mode 100644 openmeter/progressmanager/adapter/progress.go create mode 100644 openmeter/progressmanager/entity/progressmanager.go create mode 100644 openmeter/progressmanager/errors.go create mode 100644 openmeter/progressmanager/httpdriver/errors.go create mode 100644 openmeter/progressmanager/httpdriver/handler.go create mode 100644 openmeter/progressmanager/httpdriver/progress.go create mode 100644 openmeter/progressmanager/service.go diff --git a/api/api.gen.go b/api/api.gen.go index 7f150bd16..cfd5b3ae2 100644 --- a/api/api.gen.go +++ b/api/api.gen.go @@ -3888,6 +3888,21 @@ type PriceTier struct { UpToAmount *Numeric `json:"upToAmount,omitempty"` } +// Progress Progress describes a progress of a task. +type Progress struct { + // Failed Failed is the number of items that failed + Failed uint64 `json:"failed"` + + // Success Success is the number of items that succeeded + Success uint64 `json:"success"` + + // Total The total number of items to process + Total uint64 `json:"total"` + + // UpdatedAt The time the progress was last updated + UpdatedAt time.Time `json:"updatedAt"` +} + // RateCard A rate card defines the pricing and entitlement of a feature or service. type RateCard struct { union json.RawMessage @@ -4872,6 +4887,9 @@ type MarketplaceApiKeyInstallRequestType = AppType // MarketplaceOAuth2InstallAuthorizeRequestType Type of the app. type MarketplaceOAuth2InstallAuthorizeRequestType = AppType +// MeterQueryClientId defines model for MeterQuery.clientId. +type MeterQueryClientId = string + // MeterQueryFilterGroupBy defines model for MeterQuery.filterGroupBy. type MeterQueryFilterGroupBy map[string]string @@ -5207,6 +5225,10 @@ type ListEntitlementsParams struct { // ListEventsParams defines parameters for ListEvents. type ListEventsParams struct { + // ClientId Client ID + // Useful to track progress of a query. + ClientId *string `form:"clientId,omitempty" json:"clientId,omitempty"` + // IngestedAtFrom Start date-time in RFC 3339 format. // // Inclusive. @@ -5378,6 +5400,10 @@ type MarketplaceOAuth2InstallAuthorizeParams struct { // QueryMeterParams defines parameters for QueryMeter. type QueryMeterParams struct { + // ClientId Client ID + // Useful to track progress of a query. + ClientId *MeterQueryClientId `form:"clientId,omitempty" json:"clientId,omitempty"` + // From Start date-time in RFC 3339 format. // // Inclusive. @@ -5567,6 +5593,10 @@ type GetPlanParams struct { // QueryPortalMeterParams defines parameters for QueryPortalMeter. type QueryPortalMeterParams struct { + // ClientId Client ID + // Useful to track progress of a query. + ClientId *MeterQueryClientId `form:"clientId,omitempty" json:"clientId,omitempty"` + // From Start date-time in RFC 3339 format. // // Inclusive. @@ -8093,6 +8123,9 @@ type ServerInterface interface { // List supported currencies // (GET /api/v1/info/currencies) ListCurrencies(w http.ResponseWriter, r *http.Request) + // Get progress + // (GET /api/v1/info/progress/{id}) + GetProgress(w http.ResponseWriter, r *http.Request, id string) // List available apps // (GET /api/v1/marketplace/listings) ListMarketplaceListings(w http.ResponseWriter, r *http.Request, params ListMarketplaceListingsParams) @@ -8543,6 +8576,12 @@ func (_ Unimplemented) ListCurrencies(w http.ResponseWriter, r *http.Request) { w.WriteHeader(http.StatusNotImplemented) } +// Get progress +// (GET /api/v1/info/progress/{id}) +func (_ Unimplemented) GetProgress(w http.ResponseWriter, r *http.Request, id string) { + w.WriteHeader(http.StatusNotImplemented) +} + // List available apps // (GET /api/v1/marketplace/listings) func (_ Unimplemented) ListMarketplaceListings(w http.ResponseWriter, r *http.Request, params ListMarketplaceListingsParams) { @@ -10242,6 +10281,14 @@ func (siw *ServerInterfaceWrapper) ListEvents(w http.ResponseWriter, r *http.Req // Parameter object where we will unmarshal all parameters from the context var params ListEventsParams + // ------------- Optional query parameter "clientId" ------------- + + err = runtime.BindQueryParameter("form", false, false, "clientId", r.URL.Query(), ¶ms.ClientId) + if err != nil { + siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "clientId", Err: err}) + return + } + // ------------- Optional query parameter "ingestedAtFrom" ------------- err = runtime.BindQueryParameter("form", true, false, "ingestedAtFrom", r.URL.Query(), ¶ms.IngestedAtFrom) @@ -10608,6 +10655,31 @@ func (siw *ServerInterfaceWrapper) ListCurrencies(w http.ResponseWriter, r *http handler.ServeHTTP(w, r) } +// GetProgress operation middleware +func (siw *ServerInterfaceWrapper) GetProgress(w http.ResponseWriter, r *http.Request) { + + var err error + + // ------------- Path parameter "id" ------------- + var id string + + err = runtime.BindStyledParameterWithOptions("simple", "id", chi.URLParam(r, "id"), &id, runtime.BindStyledParameterOptions{ParamLocation: runtime.ParamLocationPath, Explode: false, Required: true}) + if err != nil { + siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "id", Err: err}) + return + } + + handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + siw.Handler.GetProgress(w, r, id) + })) + + for i := len(siw.HandlerMiddlewares) - 1; i >= 0; i-- { + handler = siw.HandlerMiddlewares[i](handler) + } + + handler.ServeHTTP(w, r) +} + // ListMarketplaceListings operation middleware func (siw *ServerInterfaceWrapper) ListMarketplaceListings(w http.ResponseWriter, r *http.Request) { @@ -10842,6 +10914,14 @@ func (siw *ServerInterfaceWrapper) QueryMeter(w http.ResponseWriter, r *http.Req // Parameter object where we will unmarshal all parameters from the context var params QueryMeterParams + // ------------- Optional query parameter "clientId" ------------- + + err = runtime.BindQueryParameter("form", false, false, "clientId", r.URL.Query(), ¶ms.ClientId) + if err != nil { + siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "clientId", Err: err}) + return + } + // ------------- Optional query parameter "from" ------------- err = runtime.BindQueryParameter("form", true, false, "from", r.URL.Query(), ¶ms.From) @@ -11714,6 +11794,14 @@ func (siw *ServerInterfaceWrapper) QueryPortalMeter(w http.ResponseWriter, r *ht // Parameter object where we will unmarshal all parameters from the context var params QueryPortalMeterParams + // ------------- Optional query parameter "clientId" ------------- + + err = runtime.BindQueryParameter("form", false, false, "clientId", r.URL.Query(), ¶ms.ClientId) + if err != nil { + siw.ErrorHandlerFunc(w, r, &InvalidParamFormatError{ParamName: "clientId", Err: err}) + return + } + // ------------- Optional query parameter "from" ------------- err = runtime.BindQueryParameter("form", true, false, "from", r.URL.Query(), ¶ms.From) @@ -12665,6 +12753,9 @@ func HandlerWithOptions(si ServerInterface, options ChiServerOptions) http.Handl r.Group(func(r chi.Router) { r.Get(options.BaseURL+"/api/v1/info/currencies", wrapper.ListCurrencies) }) + r.Group(func(r chi.Router) { + r.Get(options.BaseURL+"/api/v1/info/progress/{id}", wrapper.GetProgress) + }) r.Group(func(r chi.Router) { r.Get(options.BaseURL+"/api/v1/marketplace/listings", wrapper.ListMarketplaceListings) }) @@ -12844,787 +12935,793 @@ var swaggerSpec = []string{ "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", + "+v8DAAD//8mPYWsUZQcA", } // GetSwagger returns the content of the embedded swagger specification file diff --git a/api/client/go/client.gen.go b/api/client/go/client.gen.go index 2b665fa63..4728d9b9f 100644 --- a/api/client/go/client.gen.go +++ b/api/client/go/client.gen.go @@ -3893,6 +3893,21 @@ type PriceTier struct { UpToAmount *Numeric `json:"upToAmount,omitempty"` } +// Progress Progress describes a progress of a task. +type Progress struct { + // Failed Failed is the number of items that failed + Failed uint64 `json:"failed"` + + // Success Success is the number of items that succeeded + Success uint64 `json:"success"` + + // Total The total number of items to process + Total uint64 `json:"total"` + + // UpdatedAt The time the progress was last updated + UpdatedAt time.Time `json:"updatedAt"` +} + // RateCard A rate card defines the pricing and entitlement of a feature or service. type RateCard struct { union json.RawMessage @@ -4894,6 +4909,9 @@ type MarketplaceApiKeyInstallRequestType = AppType // MarketplaceOAuth2InstallAuthorizeRequestType Type of the app. type MarketplaceOAuth2InstallAuthorizeRequestType = AppType +// MeterQueryClientId defines model for MeterQuery.clientId. +type MeterQueryClientId = string + // MeterQueryFilterGroupBy defines model for MeterQuery.filterGroupBy. type MeterQueryFilterGroupBy map[string]string @@ -5229,6 +5247,10 @@ type ListEntitlementsParams struct { // ListEventsParams defines parameters for ListEvents. type ListEventsParams struct { + // ClientId Client ID + // Useful to track progress of a query. + ClientId *string `form:"clientId,omitempty" json:"clientId,omitempty"` + // IngestedAtFrom Start date-time in RFC 3339 format. // // Inclusive. @@ -5400,6 +5422,10 @@ type MarketplaceOAuth2InstallAuthorizeParams struct { // QueryMeterParams defines parameters for QueryMeter. type QueryMeterParams struct { + // ClientId Client ID + // Useful to track progress of a query. + ClientId *MeterQueryClientId `form:"clientId,omitempty" json:"clientId,omitempty"` + // From Start date-time in RFC 3339 format. // // Inclusive. @@ -5589,6 +5615,10 @@ type GetPlanParams struct { // QueryPortalMeterParams defines parameters for QueryPortalMeter. type QueryPortalMeterParams struct { + // ClientId Client ID + // Useful to track progress of a query. + ClientId *MeterQueryClientId `form:"clientId,omitempty" json:"clientId,omitempty"` + // From Start date-time in RFC 3339 format. // // Inclusive. @@ -8243,6 +8273,9 @@ type ClientInterface interface { // ListCurrencies request ListCurrencies(ctx context.Context, reqEditors ...RequestEditorFn) (*http.Response, error) + // GetProgress request + GetProgress(ctx context.Context, id string, reqEditors ...RequestEditorFn) (*http.Response, error) + // ListMarketplaceListings request ListMarketplaceListings(ctx context.Context, params *ListMarketplaceListingsParams, reqEditors ...RequestEditorFn) (*http.Response, error) @@ -9257,6 +9290,18 @@ func (c *Client) ListCurrencies(ctx context.Context, reqEditors ...RequestEditor return c.Client.Do(req) } +func (c *Client) GetProgress(ctx context.Context, id string, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewGetProgressRequest(c.Server, id) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + func (c *Client) ListMarketplaceListings(ctx context.Context, params *ListMarketplaceListingsParams, reqEditors ...RequestEditorFn) (*http.Response, error) { req, err := NewListMarketplaceListingsRequest(c.Server, params) if err != nil { @@ -12668,6 +12713,22 @@ func NewListEventsRequest(server string, params *ListEventsParams) (*http.Reques if params != nil { queryValues := queryURL.Query() + if params.ClientId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", false, "clientId", runtime.ParamLocationQuery, *params.ClientId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + if params.IngestedAtFrom != nil { if queryFrag, err := runtime.StyleParamWithLocation("form", true, "ingestedAtFrom", runtime.ParamLocationQuery, *params.IngestedAtFrom); err != nil { @@ -13376,6 +13437,40 @@ func NewListCurrenciesRequest(server string) (*http.Request, error) { return req, nil } +// NewGetProgressRequest generates requests for GetProgress +func NewGetProgressRequest(server string, id string) (*http.Request, error) { + var err error + + var pathParam0 string + + pathParam0, err = runtime.StyleParamWithLocation("simple", false, "id", runtime.ParamLocationPath, id) + if err != nil { + return nil, err + } + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/api/v1/info/progress/%s", pathParam0) + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + req, err := http.NewRequest("GET", queryURL.String(), nil) + if err != nil { + return nil, err + } + + return req, nil +} + // NewListMarketplaceListingsRequest generates requests for ListMarketplaceListings func NewListMarketplaceListingsRequest(server string, params *ListMarketplaceListingsParams) (*http.Request, error) { var err error @@ -13840,6 +13935,22 @@ func NewQueryMeterRequest(server string, meterIdOrSlug string, params *QueryMete if params != nil { queryValues := queryURL.Query() + if params.ClientId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", false, "clientId", runtime.ParamLocationQuery, *params.ClientId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + if params.From != nil { if queryFrag, err := runtime.StyleParamWithLocation("form", true, "from", runtime.ParamLocationQuery, *params.From); err != nil { @@ -15383,6 +15494,22 @@ func NewQueryPortalMeterRequest(server string, meterSlug string, params *QueryPo if params != nil { queryValues := queryURL.Query() + if params.ClientId != nil { + + if queryFrag, err := runtime.StyleParamWithLocation("form", false, "clientId", runtime.ParamLocationQuery, *params.ClientId); err != nil { + return nil, err + } else if parsed, err := url.ParseQuery(queryFrag); err != nil { + return nil, err + } else { + for k, v := range parsed { + for _, v2 := range v { + queryValues.Add(k, v2) + } + } + } + + } + if params.From != nil { if queryFrag, err := runtime.StyleParamWithLocation("form", true, "from", runtime.ParamLocationQuery, *params.From); err != nil { @@ -16931,6 +17058,9 @@ type ClientWithResponsesInterface interface { // ListCurrenciesWithResponse request ListCurrenciesWithResponse(ctx context.Context, reqEditors ...RequestEditorFn) (*ListCurrenciesResponse, error) + // GetProgressWithResponse request + GetProgressWithResponse(ctx context.Context, id string, reqEditors ...RequestEditorFn) (*GetProgressResponse, error) + // ListMarketplaceListingsWithResponse request ListMarketplaceListingsWithResponse(ctx context.Context, params *ListMarketplaceListingsParams, reqEditors ...RequestEditorFn) (*ListMarketplaceListingsResponse, error) @@ -18522,6 +18652,35 @@ func (r ListCurrenciesResponse) StatusCode() int { return 0 } +type GetProgressResponse struct { + Body []byte + HTTPResponse *http.Response + JSON200 *Progress + ApplicationproblemJSON400 *BadRequestProblemResponse + ApplicationproblemJSON401 *UnauthorizedProblemResponse + ApplicationproblemJSON403 *ForbiddenProblemResponse + ApplicationproblemJSON404 *NotFoundProblemResponse + ApplicationproblemJSON500 *InternalServerErrorProblemResponse + ApplicationproblemJSON503 *ServiceUnavailableProblemResponse + ApplicationproblemJSONDefault *UnexpectedProblemResponse +} + +// Status returns HTTPResponse.Status +func (r GetProgressResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r GetProgressResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + type ListMarketplaceListingsResponse struct { Body []byte HTTPResponse *http.Response @@ -20780,6 +20939,15 @@ func (c *ClientWithResponses) ListCurrenciesWithResponse(ctx context.Context, re return ParseListCurrenciesResponse(rsp) } +// GetProgressWithResponse request returning *GetProgressResponse +func (c *ClientWithResponses) GetProgressWithResponse(ctx context.Context, id string, reqEditors ...RequestEditorFn) (*GetProgressResponse, error) { + rsp, err := c.GetProgress(ctx, id, reqEditors...) + if err != nil { + return nil, err + } + return ParseGetProgressResponse(rsp) +} + // ListMarketplaceListingsWithResponse request returning *ListMarketplaceListingsResponse func (c *ClientWithResponses) ListMarketplaceListingsWithResponse(ctx context.Context, params *ListMarketplaceListingsParams, reqEditors ...RequestEditorFn) (*ListMarketplaceListingsResponse, error) { rsp, err := c.ListMarketplaceListings(ctx, params, reqEditors...) @@ -24895,6 +25063,81 @@ func ParseListCurrenciesResponse(rsp *http.Response) (*ListCurrenciesResponse, e return response, nil } +// ParseGetProgressResponse parses an HTTP response from a GetProgressWithResponse call +func ParseGetProgressResponse(rsp *http.Response) (*GetProgressResponse, error) { + bodyBytes, err := io.ReadAll(rsp.Body) + defer func() { _ = rsp.Body.Close() }() + if err != nil { + return nil, err + } + + response := &GetProgressResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + switch { + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 200: + var dest Progress + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSON200 = &dest + + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 400: + var dest BadRequestProblemResponse + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationproblemJSON400 = &dest + + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 401: + var dest UnauthorizedProblemResponse + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationproblemJSON401 = &dest + + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 403: + var dest ForbiddenProblemResponse + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationproblemJSON403 = &dest + + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 404: + var dest NotFoundProblemResponse + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationproblemJSON404 = &dest + + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 500: + var dest InternalServerErrorProblemResponse + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationproblemJSON500 = &dest + + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && rsp.StatusCode == 503: + var dest ServiceUnavailableProblemResponse + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationproblemJSON503 = &dest + + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && true: + var dest UnexpectedProblemResponse + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.ApplicationproblemJSONDefault = &dest + + } + + return response, nil +} + // ParseListMarketplaceListingsResponse parses an HTTP response from a ListMarketplaceListingsWithResponse call func ParseListMarketplaceListingsResponse(rsp *http.Response) (*ListMarketplaceListingsResponse, error) { bodyBytes, err := io.ReadAll(rsp.Body) @@ -29126,814 +29369,820 @@ func ParseUnscheduleCancelationResponse(rsp *http.Response) (*UnscheduleCancelat // Base64 encoded, gzipped, json marshaled Swagger object var swaggerSpec = []string{ - "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", + "2DMzx6cHAA==", } // GetSwagger returns the content of the embedded swagger specification file diff --git a/api/client/javascript/pnpm-lock.yaml b/api/client/javascript/pnpm-lock.yaml index bf07e376f..28febb13c 100644 --- a/api/client/javascript/pnpm-lock.yaml +++ b/api/client/javascript/pnpm-lock.yaml @@ -1386,7 +1386,6 @@ packages: is-subset-of@3.1.10: resolution: {integrity: sha512-avvaYgVmYWyaZ1NDFiv4y9JGkrE2je3op1Po4VYKKJKR8H2qVPsg1GZuuXl5elCTxTlwAIsrAjWAs4BVrISFRw==} - deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. is-symbol@1.0.4: resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} @@ -1934,7 +1933,6 @@ packages: typedescriptor@3.0.2: resolution: {integrity: sha512-hyVbaCUd18UiXk656g/imaBLMogpdijIEpnhWYrSda9rhvO4gOU16n2nh7xG5lv/rjumnZzGOdz0CEGTmFe0fQ==} - deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. typescript@5.7.3: resolution: {integrity: sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==} diff --git a/api/client/javascript/src/client/schemas.ts b/api/client/javascript/src/client/schemas.ts index 28b93d723..8ccc29fa4 100644 --- a/api/client/javascript/src/client/schemas.ts +++ b/api/client/javascript/src/client/schemas.ts @@ -762,6 +762,26 @@ export interface paths { patch?: never trace?: never } + '/api/v1/info/progress/{id}': { + parameters: { + query?: never + header?: never + path?: never + cookie?: never + } + /** + * Get progress + * @description Get progress + */ + get: operations['getProgress'] + put?: never + post?: never + delete?: never + options?: never + head?: never + patch?: never + trace?: never + } '/api/v1/marketplace/listings': { parameters: { query?: never @@ -6214,6 +6234,30 @@ export interface components { */ unitPrice: components['schemas']['UnitPrice'] | null } + /** @description Progress describes a progress of a task. */ + Progress: { + /** + * Format: uint64 + * @description Success is the number of items that succeeded + */ + success: number + /** + * Format: uint64 + * @description Failed is the number of items that failed + */ + failed: number + /** + * Format: uint64 + * @description The total number of items to process + */ + total: number + /** + * Format: date-time + * @description The time the progress was last updated + * @example 2023-01-01T01:01:01.001Z + */ + updatedAt: Date + } /** @description A rate card defines the pricing and entitlement of a feature or service. */ RateCard: | components['schemas']['RateCardFlatFee'] @@ -7589,6 +7633,9 @@ export interface components { 'MarketplaceApiKeyInstallRequest.type': components['schemas']['AppType'] /** @description The type of the app to install. */ 'MarketplaceOAuth2InstallAuthorizeRequest.type': components['schemas']['AppType'] + /** @description Client ID + * Useful to track progress of a query. */ + 'MeterQuery.clientId': string /** @description Simple filter for group bys with exact match. */ 'MeterQuery.filterGroupBy': { [key: string]: string @@ -8037,6 +8084,7 @@ export type PreconditionFailedProblemResponse = components['schemas']['PreconditionFailedProblemResponse'] export type PricePaymentTerm = components['schemas']['PricePaymentTerm'] export type PriceTier = components['schemas']['PriceTier'] +export type Progress = components['schemas']['Progress'] export type RateCard = components['schemas']['RateCard'] export type RateCardBooleanEntitlement = components['schemas']['RateCardBooleanEntitlement'] @@ -8182,6 +8230,8 @@ export type ParameterMarketplaceApiKeyInstallRequestType = components['parameters']['MarketplaceApiKeyInstallRequest.type'] export type ParameterMarketplaceOAuth2InstallAuthorizeRequestType = components['parameters']['MarketplaceOAuth2InstallAuthorizeRequest.type'] +export type ParameterMeterQueryClientId = + components['parameters']['MeterQuery.clientId'] export type ParameterMeterQueryFilterGroupBy = components['parameters']['MeterQuery.filterGroupBy'] export type ParameterMeterQueryFrom = @@ -11638,6 +11688,9 @@ export interface operations { listEvents: { parameters: { query?: { + /** @description Client ID + * Useful to track progress of a query. */ + clientId?: string /** @description Start date-time in RFC 3339 format. * * Inclusive. */ @@ -12438,6 +12491,91 @@ export interface operations { } } } + getProgress: { + parameters: { + query?: never + header?: never + path: { + id: string + } + cookie?: never + } + requestBody?: never + responses: { + /** @description The request has succeeded. */ + 200: { + headers: { + [name: string]: unknown + } + content: { + 'application/json': components['schemas']['Progress'] + } + } + /** @description The server cannot or will not process the request due to something that is perceived to be a client error (e.g., malformed request syntax, invalid request message framing, or deceptive request routing). */ + 400: { + headers: { + [name: string]: unknown + } + content: { + 'application/problem+json': components['schemas']['BadRequestProblemResponse'] + } + } + /** @description The request has not been applied because it lacks valid authentication credentials for the target resource. */ + 401: { + headers: { + [name: string]: unknown + } + content: { + 'application/problem+json': components['schemas']['UnauthorizedProblemResponse'] + } + } + /** @description The server understood the request but refuses to authorize it. */ + 403: { + headers: { + [name: string]: unknown + } + content: { + 'application/problem+json': components['schemas']['ForbiddenProblemResponse'] + } + } + /** @description The origin server did not find a current representation for the target resource or is not willing to disclose that one exists. */ + 404: { + headers: { + [name: string]: unknown + } + content: { + 'application/problem+json': components['schemas']['NotFoundProblemResponse'] + } + } + /** @description The server encountered an unexpected condition that prevented it from fulfilling the request. */ + 500: { + headers: { + [name: string]: unknown + } + content: { + 'application/problem+json': components['schemas']['InternalServerErrorProblemResponse'] + } + } + /** @description The server is currently unable to handle the request due to a temporary overload or scheduled maintenance, which will likely be alleviated after some delay. */ + 503: { + headers: { + [name: string]: unknown + } + content: { + 'application/problem+json': components['schemas']['ServiceUnavailableProblemResponse'] + } + } + /** @description An unexpected error response. */ + default: { + headers: { + [name: string]: unknown + } + content: { + 'application/problem+json': components['schemas']['UnexpectedProblemResponse'] + } + } + } + } listMarketplaceListings: { parameters: { query?: { @@ -13167,6 +13305,9 @@ export interface operations { queryMeter: { parameters: { query?: { + /** @description Client ID + * Useful to track progress of a query. */ + clientId?: components['parameters']['MeterQuery.clientId'] /** @description Start date-time in RFC 3339 format. * * Inclusive. */ @@ -15269,6 +15410,9 @@ export interface operations { queryPortalMeter: { parameters: { query?: { + /** @description Client ID + * Useful to track progress of a query. */ + clientId?: components['parameters']['MeterQuery.clientId'] /** @description Start date-time in RFC 3339 format. * * Inclusive. */ diff --git a/api/openapi.cloud.yaml b/api/openapi.cloud.yaml index d2b9dd301..c00e8d082 100644 --- a/api/openapi.cloud.yaml +++ b/api/openapi.cloud.yaml @@ -10,6 +10,7 @@ info: OpenMeter is a cloud native usage metering service. The OpenMeter API allows you to ingest events, query meter usage, and manage resources. tags: + - name: Track Progress - name: Meters description: Meters specify how to aggregate events for billing and analytics purposes. Meters can be configured with multiple aggregation methods and groupings. Multiple meters can be created for the same event type, enabling flexible metering scenarios. - name: Events @@ -2662,6 +2663,17 @@ paths: If the from query param is not provided it defaults to last 72 hours. parameters: + - name: clientId + in: query + required: false + description: |- + Client ID + Useful to track progress of a query. + schema: + type: string + minLength: 1 + maxLength: 36 + explode: false - name: ingestedAtFrom in: query required: false @@ -3320,6 +3332,68 @@ paths: $ref: '#/components/schemas/UnexpectedProblemResponse' tags: - Lookup Information + /api/v1/info/progress/{id}: + get: + operationId: getProgress + summary: Get progress + description: Get progress + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: The request has succeeded. + content: + application/json: + schema: + $ref: '#/components/schemas/Progress' + '400': + description: The server cannot or will not process the request due to something that is perceived to be a client error (e.g., malformed request syntax, invalid request message framing, or deceptive request routing). + content: + application/problem+json: + schema: + $ref: '#/components/schemas/BadRequestProblemResponse' + '401': + description: The request has not been applied because it lacks valid authentication credentials for the target resource. + content: + application/problem+json: + schema: + $ref: '#/components/schemas/UnauthorizedProblemResponse' + '403': + description: The server understood the request but refuses to authorize it. + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ForbiddenProblemResponse' + '404': + description: The origin server did not find a current representation for the target resource or is not willing to disclose that one exists. + content: + application/problem+json: + schema: + $ref: '#/components/schemas/NotFoundProblemResponse' + '500': + description: The server encountered an unexpected condition that prevented it from fulfilling the request. + content: + application/problem+json: + schema: + $ref: '#/components/schemas/InternalServerErrorProblemResponse' + '503': + description: The server is currently unable to handle the request due to a temporary overload or scheduled maintenance, which will likely be alleviated after some delay. + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ServiceUnavailableProblemResponse' + default: + description: An unexpected error response. + content: + application/problem+json: + schema: + $ref: '#/components/schemas/UnexpectedProblemResponse' + tags: + - Track Progress /api/v1/marketplace/listings: get: operationId: listMarketplaceListings @@ -3854,6 +3928,7 @@ paths: minLength: 1 maxLength: 64 pattern: ^[a-z0-9]+(?:_[a-z0-9]+)*$|^[0-7][0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{25}$ + - $ref: '#/components/parameters/MeterQuery.clientId' - $ref: '#/components/parameters/MeterQuery.from' - $ref: '#/components/parameters/MeterQuery.to' - $ref: '#/components/parameters/MeterQuery.windowSize' @@ -5563,6 +5638,7 @@ paths: minLength: 1 maxLength: 64 pattern: ^[a-z0-9]+(?:_[a-z0-9]+)*$ + - $ref: '#/components/parameters/MeterQuery.clientId' - $ref: '#/components/parameters/MeterQuery.from' - $ref: '#/components/parameters/MeterQuery.to' - $ref: '#/components/parameters/MeterQuery.windowSize' @@ -7616,6 +7692,18 @@ components: description: The type of the app to install. schema: $ref: '#/components/schemas/AppType' + MeterQuery.clientId: + name: clientId + in: query + required: false + description: |- + Client ID + Useful to track progress of a query. + schema: + type: string + minLength: 1 + maxLength: 36 + explode: false MeterQuery.filterGroupBy: name: filterGroupBy in: query @@ -14297,6 +14385,32 @@ components: description: |- A price tier. At least one price component is required in each tier. + Progress: + type: object + required: + - success + - failed + - total + - updatedAt + properties: + success: + type: integer + format: uint64 + description: Success is the number of items that succeeded + failed: + type: integer + format: uint64 + description: Failed is the number of items that failed + total: + type: integer + format: uint64 + description: The total number of items to process + updatedAt: + type: string + format: date-time + description: The time the progress was last updated + example: '2023-01-01T01:01:01.001Z' + description: Progress describes a progress of a task. RateCard: oneOf: - $ref: '#/components/schemas/RateCardFlatFee' diff --git a/api/openapi.yaml b/api/openapi.yaml index 44db38afe..acc09b9ba 100644 --- a/api/openapi.yaml +++ b/api/openapi.yaml @@ -9,6 +9,7 @@ info: OpenMeter is a cloud native usage metering service. The OpenMeter API allows you to ingest events, query meter usage, and manage resources. tags: + - name: Track Progress - name: Meters description: Meters specify how to aggregate events for billing and analytics purposes. Meters can be configured with multiple aggregation methods and groupings. Multiple meters can be created for the same event type, enabling flexible metering scenarios. - name: Events @@ -2661,6 +2662,17 @@ paths: If the from query param is not provided it defaults to last 72 hours. parameters: + - name: clientId + in: query + required: false + description: |- + Client ID + Useful to track progress of a query. + schema: + type: string + minLength: 1 + maxLength: 36 + explode: false - name: ingestedAtFrom in: query required: false @@ -3319,6 +3331,68 @@ paths: $ref: '#/components/schemas/UnexpectedProblemResponse' tags: - Lookup Information + /api/v1/info/progress/{id}: + get: + operationId: getProgress + summary: Get progress + description: Get progress + parameters: + - name: id + in: path + required: true + schema: + type: string + responses: + '200': + description: The request has succeeded. + content: + application/json: + schema: + $ref: '#/components/schemas/Progress' + '400': + description: The server cannot or will not process the request due to something that is perceived to be a client error (e.g., malformed request syntax, invalid request message framing, or deceptive request routing). + content: + application/problem+json: + schema: + $ref: '#/components/schemas/BadRequestProblemResponse' + '401': + description: The request has not been applied because it lacks valid authentication credentials for the target resource. + content: + application/problem+json: + schema: + $ref: '#/components/schemas/UnauthorizedProblemResponse' + '403': + description: The server understood the request but refuses to authorize it. + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ForbiddenProblemResponse' + '404': + description: The origin server did not find a current representation for the target resource or is not willing to disclose that one exists. + content: + application/problem+json: + schema: + $ref: '#/components/schemas/NotFoundProblemResponse' + '500': + description: The server encountered an unexpected condition that prevented it from fulfilling the request. + content: + application/problem+json: + schema: + $ref: '#/components/schemas/InternalServerErrorProblemResponse' + '503': + description: The server is currently unable to handle the request due to a temporary overload or scheduled maintenance, which will likely be alleviated after some delay. + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ServiceUnavailableProblemResponse' + default: + description: An unexpected error response. + content: + application/problem+json: + schema: + $ref: '#/components/schemas/UnexpectedProblemResponse' + tags: + - Track Progress /api/v1/marketplace/listings: get: operationId: listMarketplaceListings @@ -3743,6 +3817,7 @@ paths: minLength: 1 maxLength: 64 pattern: ^[a-z0-9]+(?:_[a-z0-9]+)*$|^[0-7][0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{25}$ + - $ref: '#/components/parameters/MeterQuery.clientId' - $ref: '#/components/parameters/MeterQuery.from' - $ref: '#/components/parameters/MeterQuery.to' - $ref: '#/components/parameters/MeterQuery.windowSize' @@ -5452,6 +5527,7 @@ paths: minLength: 1 maxLength: 64 pattern: ^[a-z0-9]+(?:_[a-z0-9]+)*$ + - $ref: '#/components/parameters/MeterQuery.clientId' - $ref: '#/components/parameters/MeterQuery.from' - $ref: '#/components/parameters/MeterQuery.to' - $ref: '#/components/parameters/MeterQuery.windowSize' @@ -7212,6 +7288,18 @@ components: description: The type of the app to install. schema: $ref: '#/components/schemas/AppType' + MeterQuery.clientId: + name: clientId + in: query + required: false + description: |- + Client ID + Useful to track progress of a query. + schema: + type: string + minLength: 1 + maxLength: 36 + explode: false MeterQuery.filterGroupBy: name: filterGroupBy in: query @@ -14101,6 +14189,32 @@ components: - unit - tiered description: The type of the price. + Progress: + type: object + required: + - success + - failed + - total + - updatedAt + properties: + success: + type: integer + format: uint64 + description: Success is the number of items that succeeded + failed: + type: integer + format: uint64 + description: Failed is the number of items that failed + total: + type: integer + format: uint64 + description: The total number of items to process + updatedAt: + type: string + format: date-time + description: The time the progress was last updated + example: '2023-01-01T01:01:01.001Z' + description: Progress describes a progress of a task. RateCard: oneOf: - $ref: '#/components/schemas/RateCardFlatFee' diff --git a/api/spec/src/cloud/main.tsp b/api/spec/src/cloud/main.tsp index 9e207ae54..af6dfe001 100644 --- a/api/spec/src/cloud/main.tsp +++ b/api/spec/src/cloud/main.tsp @@ -261,6 +261,10 @@ namespace OpenMeterCloud.Info { @route("/api/v1/info/currencies") @tag("Lookup Information") interface Currencies extends OpenMeter.Info.Currencies {} + + @route("/api/v1/info/progress") + @tag("Track Progress") + interface Progress extends OpenMeter.Info.Progresses {} } /** diff --git a/api/spec/src/events.tsp b/api/spec/src/events.tsp index e48c227c1..2bff886ad 100644 --- a/api/spec/src/events.tsp +++ b/api/spec/src/events.tsp @@ -20,6 +20,16 @@ interface Events { @operationId("listEvents") @summary("List ingested events") list( + /** + * Client ID + * Useful to track progress of a query. + */ + @query + @example("f74e58ed-94ce-4041-ae06-cf45420451a3") + @minLength(1) + @maxLength(36) + clientId?: string, + /** * Start date-time in RFC 3339 format. * diff --git a/api/spec/src/info/main.tsp b/api/spec/src/info/main.tsp index dc3f9f34f..0af28fbd5 100644 --- a/api/spec/src/info/main.tsp +++ b/api/spec/src/info/main.tsp @@ -6,6 +6,7 @@ import ".."; // Package Contents import "./currencies.tsp"; +import "./progress.tsp"; import "./routes.tsp"; namespace OpenMeter.Info; diff --git a/api/spec/src/info/progress.tsp b/api/spec/src/info/progress.tsp new file mode 100644 index 000000000..df6160cb9 --- /dev/null +++ b/api/spec/src/info/progress.tsp @@ -0,0 +1,45 @@ +namespace OpenMeter.Info; + +using TypeSpec.Http; +using TypeSpec.OpenAPI; + +@route("/api/v1/info/progress") +@tag("Track Progress") +interface Progresses { + /** + * Get progress + */ + @get + @route("/{id}") + @operationId("getProgress") + @summary("Get progress") + getProgress( + id: string, + ): Progress | OpenMeter.NotFoundError | OpenMeter.CommonErrors; +} + +/** + * Progress describes a progress of a task. + */ +@friendlyName("Progress") +model Progress { + /** + * Success is the number of items that succeeded + */ + success: uint64; + + /** + * Failed is the number of items that failed + */ + failed: uint64; + + /** + * The total number of items to process + */ + total: uint64; + + /** + * The time the progress was last updated + */ + updatedAt: DateTime; +} diff --git a/api/spec/src/meters.tsp b/api/spec/src/meters.tsp index 9552597a6..9afcb4520 100644 --- a/api/spec/src/meters.tsp +++ b/api/spec/src/meters.tsp @@ -204,6 +204,16 @@ alias MeterIdentifier = ULIDOrKey; */ @friendlyName("MeterQuery") model MeterQuery { + /** + * Client ID + * Useful to track progress of a query. + */ + @query + @example("f74e58ed-94ce-4041-ae06-cf45420451a3") + @minLength(1) + @maxLength(36) + clientId?: string; + /** * Start date-time in RFC 3339 format. * diff --git a/app/common/config.go b/app/common/config.go index 7403fc82d..73167e717 100644 --- a/app/common/config.go +++ b/app/common/config.go @@ -34,6 +34,8 @@ var Config = wire.NewSet( wire.FieldsOf(new(config.Configuration), "Notification"), // ProductCatalog wire.FieldsOf(new(config.Configuration), "ProductCatalog"), + // ProgressManager + wire.FieldsOf(new(config.Configuration), "ProgressManager"), // Svix wire.FieldsOf(new(config.Configuration), "Svix"), // Telemetry diff --git a/app/common/progressmanager.go b/app/common/progressmanager.go new file mode 100644 index 000000000..ad499bf92 --- /dev/null +++ b/app/common/progressmanager.go @@ -0,0 +1,39 @@ +package common + +import ( + "fmt" + "log/slog" + + "github.com/google/wire" + + "github.com/openmeterio/openmeter/app/config" + "github.com/openmeterio/openmeter/openmeter/progressmanager" + "github.com/openmeterio/openmeter/openmeter/progressmanager/adapter" +) + +var ProgressManager = wire.NewSet( + NewProgressManager, +) + +// NewProgressManager creates a new progress manager service. +func NewProgressManager(logger *slog.Logger, conf config.ProgressManagerConfiguration) (progressmanager.Service, error) { + if !conf.Enabled { + return adapter.NewNoop(), nil + } + + redisClient, err := conf.Redis.NewClient() + if err != nil { + return nil, fmt.Errorf("progress manager redis: %w", err) + } + + pm, err := adapter.New(adapter.Config{ + Expiration: conf.Expiration, + Logger: logger, + Redis: redisClient, + }) + if err != nil { + return nil, fmt.Errorf("progress manager adapter: %w", err) + } + + return pm, nil +} diff --git a/app/common/streaming.go b/app/common/streaming.go index 379df9f28..3472571cb 100644 --- a/app/common/streaming.go +++ b/app/common/streaming.go @@ -10,6 +10,7 @@ import ( "github.com/openmeterio/openmeter/app/config" "github.com/openmeterio/openmeter/openmeter/meter" + "github.com/openmeterio/openmeter/openmeter/progressmanager" "github.com/openmeterio/openmeter/openmeter/streaming" "github.com/openmeterio/openmeter/openmeter/streaming/clickhouse/materialized_view" "github.com/openmeterio/openmeter/openmeter/streaming/clickhouse/raw_events" @@ -25,6 +26,7 @@ func NewStreamingConnector( clickHouse clickhouse.Conn, meterRepository meter.Repository, logger *slog.Logger, + progressmanager progressmanager.Service, ) (streaming.Connector, error) { var ( connector streaming.Connector @@ -41,6 +43,7 @@ func NewStreamingConnector( AsyncInsert: conf.AsyncInsert, AsyncInsertWait: conf.AsyncInsertWait, InsertQuerySettings: conf.InsertQuerySettings, + ProgressManager: progressmanager, }) if err != nil { return nil, fmt.Errorf("init clickhouse raw engine: %w", err) @@ -60,6 +63,7 @@ func NewStreamingConnector( PopulateMeter: conf.PopulateMeter, CreateOrReplaceMeter: conf.CreateOrReplaceMeter, QueryRawEvents: conf.QueryRawEvents, + ProgressManager: progressmanager, }) if err != nil { return nil, fmt.Errorf("init clickhouse mv engine: %w", err) diff --git a/app/config/config.go b/app/config/config.go index 3660846a2..e7ba86acf 100644 --- a/app/config/config.go +++ b/app/config/config.go @@ -20,22 +20,23 @@ type Configuration struct { Telemetry TelemetryConfig - Aggregation AggregationConfiguration - Entitlements EntitlementsConfiguration - Dedupe DedupeConfiguration - Events EventsConfiguration - Ingest IngestConfiguration - Meters []*models.Meter - Namespace NamespaceConfiguration - Portal PortalConfiguration - Postgres PostgresConfig - Sink SinkConfiguration - BalanceWorker BalanceWorkerConfiguration - Notification NotificationConfiguration - ProductCatalog ProductCatalogConfiguration - Billing BillingConfiguration - Apps AppsConfiguration - Svix SvixConfig + Aggregation AggregationConfiguration + Entitlements EntitlementsConfiguration + Dedupe DedupeConfiguration + Events EventsConfiguration + Ingest IngestConfiguration + Meters []*models.Meter + Namespace NamespaceConfiguration + Portal PortalConfiguration + Postgres PostgresConfig + Sink SinkConfiguration + BalanceWorker BalanceWorkerConfiguration + Notification NotificationConfiguration + ProductCatalog ProductCatalogConfiguration + ProgressManager ProgressManagerConfiguration + Billing BillingConfiguration + Apps AppsConfiguration + Svix SvixConfig } // Validate validates the configuration. @@ -158,4 +159,5 @@ func SetViperDefaults(v *viper.Viper, flags *pflag.FlagSet) { ConfigureBilling(v) ConfigureProductCatalog(v) ConfigureApps(v, flags) + ConfigureProgressManager(v) } diff --git a/app/config/config_test.go b/app/config/config_test.go index 48ed75f22..660f1937d 100644 --- a/app/config/config_test.go +++ b/app/config/config_test.go @@ -335,6 +335,10 @@ func TestComplete(t *testing.T) { ServerURL: "http://127.0.0.1:8071", Debug: true, }, + ProgressManager: ProgressManagerConfiguration{ + Enabled: false, + Expiration: 5 * time.Minute, + }, } assert.Equal(t, expected, actual) diff --git a/app/config/dedupe.go b/app/config/dedupe.go index 3d19d1864..1f684a170 100644 --- a/app/config/dedupe.go +++ b/app/config/dedupe.go @@ -171,7 +171,7 @@ func (DedupeDriverRedisConfiguration) DriverName() string { } func (c DedupeDriverRedisConfiguration) NewDeduplicator() (dedupe.Deduplicator, error) { - redisClient, err := redis.NewClient(redis.Options{Config: c.Config}) + redisClient, err := c.NewClient() if err != nil { return nil, fmt.Errorf("failed to initialize redis client: %w", err) } @@ -186,14 +186,8 @@ func (c DedupeDriverRedisConfiguration) NewDeduplicator() (dedupe.Deduplicator, func (c DedupeDriverRedisConfiguration) Validate() error { var errs []error - if c.Address == "" { - errs = append(errs, errors.New("address is required")) - } - - if c.Sentinel.Enabled { - if c.Sentinel.MasterName == "" { - errs = append(errs, errors.New("sentinel: master name is required")) - } + if err := c.Config.Validate(); err != nil { + errs = append(errs, errorsx.WithPrefix(err, "redis")) } return errors.Join(errs...) @@ -208,13 +202,5 @@ func ConfigureDedupe(v *viper.Viper) { v.SetDefault("dedupe.config.size", 128) // Redis driver - v.SetDefault("dedupe.config.address", "127.0.0.1:6379") - v.SetDefault("dedupe.config.database", 0) - v.SetDefault("dedupe.config.username", "") - v.SetDefault("dedupe.config.password", "") - v.SetDefault("dedupe.config.expiration", "24h") - v.SetDefault("dedupe.config.sentinel.enabled", false) - v.SetDefault("dedupe.config.sentinel.masterName", "") - v.SetDefault("dedupe.config.tls.enabled", false) - v.SetDefault("dedupe.config.tls.insecureSkipVerify", false) + redis.Configure(v, "dedupe.config") } diff --git a/app/config/progressmanager.go b/app/config/progressmanager.go new file mode 100644 index 000000000..5ca564059 --- /dev/null +++ b/app/config/progressmanager.go @@ -0,0 +1,43 @@ +package config + +import ( + "errors" + "time" + + "github.com/spf13/viper" + + "github.com/openmeterio/openmeter/pkg/errorsx" + "github.com/openmeterio/openmeter/pkg/redis" +) + +// ProgressManagerConfiguration stores the configuration parameters for the progress manager +type ProgressManagerConfiguration struct { + Enabled bool + Expiration time.Duration + Redis redis.Config `mapstructure:",squash"` +} + +// Validate checks if the configuration is valid +func (c ProgressManagerConfiguration) Validate() error { + var errs []error + + if !c.Enabled { + return nil + } + + if c.Expiration <= 0 { + errs = append(errs, errors.New("expiration must be greater than 0")) + } + + if err := c.Redis.Validate(); err != nil { + errs = append(errs, errorsx.WithPrefix(err, "redis")) + } + + return errors.Join(errs...) +} + +// ConfigureProgressManager sets the default values for the progress manager configuration +func ConfigureProgressManager(v *viper.Viper) { + v.SetDefault("progressManager.expiration", "5m") + redis.Configure(v, "progressManager.redis") +} diff --git a/cmd/balance-worker/wire.go b/cmd/balance-worker/wire.go index 2c30204a3..6d674544f 100644 --- a/cmd/balance-worker/wire.go +++ b/cmd/balance-worker/wire.go @@ -37,6 +37,7 @@ func initializeApplication(ctx context.Context, conf config.Configuration) (Appl common.KafkaTopic, common.MeterInMemory, common.NewDefaultTextMapPropagator, + common.ProgressManager, common.Streaming, common.Telemetry, common.Watermill, diff --git a/cmd/balance-worker/wire_gen.go b/cmd/balance-worker/wire_gen.go index e49c39e77..91d666dbb 100644 --- a/cmd/balance-worker/wire_gen.go +++ b/cmd/balance-worker/wire_gen.go @@ -147,7 +147,18 @@ func initializeApplication(ctx context.Context, conf config.Configuration) (Appl } v3 := conf.Meters inMemoryRepository := common.NewInMemoryRepository(v3) - connector, err := common.NewStreamingConnector(ctx, aggregationConfiguration, v2, inMemoryRepository, logger) + progressManagerConfiguration := conf.ProgressManager + service, err := common.NewProgressManager(logger, progressManagerConfiguration) + if err != nil { + cleanup6() + cleanup5() + cleanup4() + cleanup3() + cleanup2() + cleanup() + return Application{}, nil, err + } + connector, err := common.NewStreamingConnector(ctx, aggregationConfiguration, v2, inMemoryRepository, logger, service) if err != nil { cleanup6() cleanup5() diff --git a/cmd/billing-worker/wire.go b/cmd/billing-worker/wire.go index ae0cffcae..f99f0e053 100644 --- a/cmd/billing-worker/wire.go +++ b/cmd/billing-worker/wire.go @@ -46,6 +46,7 @@ func initializeApplication(ctx context.Context, conf config.Configuration) (Appl common.MeterInMemory, common.Namespace, common.NewDefaultTextMapPropagator, + common.ProgressManager, common.Streaming, common.Telemetry, common.Watermill, diff --git a/cmd/billing-worker/wire_gen.go b/cmd/billing-worker/wire_gen.go index 8646007bd..0b728b500 100644 --- a/cmd/billing-worker/wire_gen.go +++ b/cmd/billing-worker/wire_gen.go @@ -173,7 +173,18 @@ func initializeApplication(ctx context.Context, conf config.Configuration) (Appl } v3 := conf.Meters inMemoryRepository := common.NewInMemoryRepository(v3) - connector, err := common.NewStreamingConnector(ctx, aggregationConfiguration, v2, inMemoryRepository, logger) + progressManagerConfiguration := conf.ProgressManager + progressmanagerService, err := common.NewProgressManager(logger, progressManagerConfiguration) + if err != nil { + cleanup6() + cleanup5() + cleanup4() + cleanup3() + cleanup2() + cleanup() + return Application{}, nil, err + } + connector, err := common.NewStreamingConnector(ctx, aggregationConfiguration, v2, inMemoryRepository, logger, progressmanagerService) if err != nil { cleanup6() cleanup5() diff --git a/cmd/jobs/internal/wire.go b/cmd/jobs/internal/wire.go index 97bad9535..80d6609ac 100644 --- a/cmd/jobs/internal/wire.go +++ b/cmd/jobs/internal/wire.go @@ -80,6 +80,7 @@ func initializeApplication(ctx context.Context, conf config.Configuration) (Appl common.NewServerPublisher, common.Streaming, common.ProductCatalog, + common.ProgressManager, common.Subscription, common.Secret, common.ServerProvisionTopics, diff --git a/cmd/jobs/internal/wire_gen.go b/cmd/jobs/internal/wire_gen.go index b24f945fc..b3e5c9c71 100644 --- a/cmd/jobs/internal/wire_gen.go +++ b/cmd/jobs/internal/wire_gen.go @@ -105,7 +105,17 @@ func initializeApplication(ctx context.Context, conf config.Configuration) (Appl } v2 := conf.Meters inMemoryRepository := common.NewInMemoryRepository(v2) - connector, err := common.NewStreamingConnector(ctx, aggregationConfiguration, v, inMemoryRepository, logger) + progressManagerConfiguration := conf.ProgressManager + progressmanagerService, err := common.NewProgressManager(logger, progressManagerConfiguration) + if err != nil { + cleanup5() + cleanup4() + cleanup3() + cleanup2() + cleanup() + return Application{}, nil, err + } + connector, err := common.NewStreamingConnector(ctx, aggregationConfiguration, v, inMemoryRepository, logger, progressmanagerService) if err != nil { cleanup5() cleanup4() diff --git a/cmd/notification-service/wire.go b/cmd/notification-service/wire.go index f8494038d..0ef6352e1 100644 --- a/cmd/notification-service/wire.go +++ b/cmd/notification-service/wire.go @@ -53,6 +53,7 @@ func initializeApplication(ctx context.Context, conf config.Configuration) (Appl common.NewDefaultTextMapPropagator, common.Notification, common.NotificationServiceProvisionTopics, + common.ProgressManager, common.Streaming, common.Telemetry, common.Watermill, diff --git a/cmd/notification-service/wire_gen.go b/cmd/notification-service/wire_gen.go index d20429e7b..b8749df32 100644 --- a/cmd/notification-service/wire_gen.go +++ b/cmd/notification-service/wire_gen.go @@ -148,7 +148,18 @@ func initializeApplication(ctx context.Context, conf config.Configuration) (Appl cleanup() return Application{}, nil, err } - connector, err := common.NewStreamingConnector(ctx, aggregationConfiguration, v4, inMemoryRepository, logger) + progressManagerConfiguration := conf.ProgressManager + progressmanagerService, err := common.NewProgressManager(logger, progressManagerConfiguration) + if err != nil { + cleanup6() + cleanup5() + cleanup4() + cleanup3() + cleanup2() + cleanup() + return Application{}, nil, err + } + connector, err := common.NewStreamingConnector(ctx, aggregationConfiguration, v4, inMemoryRepository, logger, progressmanagerService) if err != nil { cleanup6() cleanup5() diff --git a/cmd/server/main.go b/cmd/server/main.go index 6f14000df..ddc7c69e0 100644 --- a/cmd/server/main.go +++ b/cmd/server/main.go @@ -182,6 +182,7 @@ func main() { GrantRepo: app.EntitlementRegistry.GrantRepo, Notification: app.Notification, Plan: app.Plan, + ProgressManager: app.ProgressManager, // modules ProductCatalogEnabled: conf.ProductCatalog.Enabled, AppsEnabled: conf.Apps.Enabled, diff --git a/cmd/server/wire.go b/cmd/server/wire.go index ce8db3e20..80316d047 100644 --- a/cmd/server/wire.go +++ b/cmd/server/wire.go @@ -25,6 +25,7 @@ import ( "github.com/openmeterio/openmeter/openmeter/notification" "github.com/openmeterio/openmeter/openmeter/productcatalog/feature" "github.com/openmeterio/openmeter/openmeter/productcatalog/plan" + "github.com/openmeterio/openmeter/openmeter/progressmanager" "github.com/openmeterio/openmeter/openmeter/registry" "github.com/openmeterio/openmeter/openmeter/secret" "github.com/openmeterio/openmeter/openmeter/streaming" @@ -55,6 +56,7 @@ type Application struct { Notification notification.Service Meter metric.Meter Plan plan.Service + ProgressManager progressmanager.Service RouterHook func(chi.Router) Secret secret.Service Subscription common.SubscriptionServiceWithWorkflow @@ -85,6 +87,7 @@ func initializeApplication(ctx context.Context, conf config.Configuration) (Appl common.Notification, common.Streaming, common.ProductCatalog, + common.ProgressManager, common.Subscription, common.Secret, common.ServerProvisionTopics, diff --git a/cmd/server/wire_gen.go b/cmd/server/wire_gen.go index 2a0caa4ec..c01005749 100644 --- a/cmd/server/wire_gen.go +++ b/cmd/server/wire_gen.go @@ -23,6 +23,7 @@ import ( "github.com/openmeterio/openmeter/openmeter/notification" "github.com/openmeterio/openmeter/openmeter/productcatalog/feature" "github.com/openmeterio/openmeter/openmeter/productcatalog/plan" + "github.com/openmeterio/openmeter/openmeter/progressmanager" "github.com/openmeterio/openmeter/openmeter/registry" "github.com/openmeterio/openmeter/openmeter/secret" "github.com/openmeterio/openmeter/openmeter/streaming" @@ -106,7 +107,17 @@ func initializeApplication(ctx context.Context, conf config.Configuration) (Appl } v2 := conf.Meters inMemoryRepository := common.NewInMemoryRepository(v2) - connector, err := common.NewStreamingConnector(ctx, aggregationConfiguration, v, inMemoryRepository, logger) + progressManagerConfiguration := conf.ProgressManager + progressmanagerService, err := common.NewProgressManager(logger, progressManagerConfiguration) + if err != nil { + cleanup5() + cleanup4() + cleanup3() + cleanup2() + cleanup() + return Application{}, nil, err + } + connector, err := common.NewStreamingConnector(ctx, aggregationConfiguration, v, inMemoryRepository, logger, progressmanagerService) if err != nil { cleanup5() cleanup4() @@ -374,6 +385,7 @@ func initializeApplication(ctx context.Context, conf config.Configuration) (Appl Notification: notificationService, Meter: meter, Plan: planService, + ProgressManager: progressmanagerService, RouterHook: v6, Secret: secretserviceService, Subscription: subscriptionServiceWithWorkflow, @@ -417,6 +429,7 @@ type Application struct { Notification notification.Service Meter metric.Meter Plan plan.Service + ProgressManager progressmanager.Service RouterHook func(chi.Router) Secret secret.Service Subscription common.SubscriptionServiceWithWorkflow diff --git a/cmd/sink-worker/wire.go b/cmd/sink-worker/wire.go index 0c5673c6f..b05709a8f 100644 --- a/cmd/sink-worker/wire.go +++ b/cmd/sink-worker/wire.go @@ -53,6 +53,7 @@ func initializeApplication(ctx context.Context, conf config.Configuration) (Appl common.NewDefaultTextMapPropagator, common.NewFlushHandler, common.NewSinkWorkerPublisher, + common.ProgressManager, common.SinkWorkerProvisionTopics, common.Streaming, common.Telemetry, diff --git a/cmd/sink-worker/wire_gen.go b/cmd/sink-worker/wire_gen.go index 887573dc8..a916ea409 100644 --- a/cmd/sink-worker/wire_gen.go +++ b/cmd/sink-worker/wire_gen.go @@ -121,7 +121,16 @@ func initializeApplication(ctx context.Context, conf config.Configuration) (Appl cleanup() return Application{}, nil, err } - connector, err := common.NewStreamingConnector(ctx, aggregationConfiguration, v3, inMemoryRepository, logger) + progressManagerConfiguration := conf.ProgressManager + service, err := common.NewProgressManager(logger, progressManagerConfiguration) + if err != nil { + cleanup4() + cleanup3() + cleanup2() + cleanup() + return Application{}, nil, err + } + connector, err := common.NewStreamingConnector(ctx, aggregationConfiguration, v3, inMemoryRepository, logger, service) if err != nil { cleanup4() cleanup3() diff --git a/openmeter/progressmanager/adapter.go b/openmeter/progressmanager/adapter.go new file mode 100644 index 000000000..414436d25 --- /dev/null +++ b/openmeter/progressmanager/adapter.go @@ -0,0 +1,16 @@ +package progressmanager + +import ( + "context" + + "github.com/openmeterio/openmeter/openmeter/progressmanager/entity" +) + +type Adapter interface { + ProgressManagerAdapter +} + +type ProgressManagerAdapter interface { + GetProgress(ctx context.Context, input entity.GetProgressInput) (*entity.Progress, error) + UpsertProgress(ctx context.Context, input entity.UpsertProgressInput) error +} diff --git a/openmeter/progressmanager/adapter/adapter.go b/openmeter/progressmanager/adapter/adapter.go new file mode 100644 index 000000000..025250cf2 --- /dev/null +++ b/openmeter/progressmanager/adapter/adapter.go @@ -0,0 +1,61 @@ +package adapter + +import ( + "errors" + "log/slog" + "time" + + "github.com/redis/go-redis/v9" + + "github.com/openmeterio/openmeter/openmeter/progressmanager" +) + +type Config struct { + Expiration time.Duration + Redis *redis.Client + Logger *slog.Logger +} + +func (c Config) Validate() error { + if c.Expiration <= 0 { + return errors.New("expiration must be greater than 0") + } + + if c.Redis == nil { + return errors.New("redis client is required") + } + + if c.Logger == nil { + return errors.New("logger must not be nil") + } + + return nil +} + +func New(config Config) (progressmanager.Adapter, error) { + if err := config.Validate(); err != nil { + return nil, err + } + + return &adapter{ + expiration: config.Expiration, + redis: config.Redis, + logger: config.Logger, + }, nil +} + +var _ progressmanager.Adapter = (*adapter)(nil) + +type adapter struct { + expiration time.Duration + redis *redis.Client + logger *slog.Logger +} + +func NewNoop() progressmanager.Adapter { + return &adapterNoop{} +} + +var _ progressmanager.Adapter = (*adapterNoop)(nil) + +type adapterNoop struct{} diff --git a/openmeter/progressmanager/adapter/noop.go b/openmeter/progressmanager/adapter/noop.go new file mode 100644 index 000000000..739969b87 --- /dev/null +++ b/openmeter/progressmanager/adapter/noop.go @@ -0,0 +1,16 @@ +package adapter + +import ( + "context" + + "github.com/openmeterio/openmeter/openmeter/progressmanager" + "github.com/openmeterio/openmeter/openmeter/progressmanager/entity" +) + +func (a *adapterNoop) GetProgress(ctx context.Context, input entity.GetProgressInput) (*entity.Progress, error) { + return nil, progressmanager.NotFoundError{ID: input.ID, Entity: "progress"} +} + +func (a *adapterNoop) UpsertProgress(ctx context.Context, input entity.UpsertProgressInput) error { + return nil +} diff --git a/openmeter/progressmanager/adapter/progress.go b/openmeter/progressmanager/adapter/progress.go new file mode 100644 index 000000000..71b52fa80 --- /dev/null +++ b/openmeter/progressmanager/adapter/progress.go @@ -0,0 +1,64 @@ +package adapter + +import ( + "context" + "encoding/json" + "fmt" + + "github.com/redis/go-redis/v9" + + "github.com/openmeterio/openmeter/openmeter/progressmanager" + "github.com/openmeterio/openmeter/openmeter/progressmanager/entity" +) + +// keyPrefix is the prefix for the key in the KV store +const keyPrefix = "progress:" + +// GetProgress retrieves the progress +func (a *adapter) GetProgress(ctx context.Context, input entity.GetProgressInput) (*entity.Progress, error) { + if err := input.Validate(); err != nil { + return nil, fmt.Errorf("validate get progress input: %w", err) + } + + var progress entity.Progress + + cmd := a.redis.Get(ctx, getKey(input.ProgressID)) + + if cmd.Err() != nil { + if cmd.Err() == redis.Nil { + return nil, progressmanager.NotFoundError{ID: input.ProgressID.ID, Entity: "progress"} + } + + return nil, fmt.Errorf("get progress: %w", cmd.Err()) + } + + if err := json.Unmarshal([]byte(cmd.Val()), &progress); err != nil { + return nil, fmt.Errorf("unmarshal progress: %w", err) + } + + return &progress, nil +} + +// UpsertProgress updates the progress +func (a *adapter) UpsertProgress(ctx context.Context, input entity.UpsertProgressInput) error { + if err := input.Validate(); err != nil { + return fmt.Errorf("validate upsert progress input: %w", err) + } + + data, err := json.Marshal(input.Progress) + if err != nil { + return fmt.Errorf("marshal progress: %w", err) + } + + cmd := a.redis.Set(ctx, getKey(input.ProgressID), data, a.expiration) + if cmd.Err() != nil { + return fmt.Errorf("set progress: %w", cmd.Err()) + } + + return nil +} + +// getKey returns the key for the KV store +func getKey(id entity.ProgressID) string { + return fmt.Sprintf("%s:%s:%s", keyPrefix, id.Namespace, id.ID) +} diff --git a/openmeter/progressmanager/entity/progressmanager.go b/openmeter/progressmanager/entity/progressmanager.go new file mode 100644 index 000000000..481c8803c --- /dev/null +++ b/openmeter/progressmanager/entity/progressmanager.go @@ -0,0 +1,91 @@ +package entity + +import ( + "errors" + "fmt" + "time" + + "github.com/openmeterio/openmeter/pkg/models" +) + +// ProgressID is the identifier for a progress +type ProgressID struct { + models.NamespacedModel `json:"namespace,inline"` + ID string +} + +func (a *ProgressID) Validate() error { + var errs []error + + if err := a.NamespacedModel.Validate(); err != nil { + errs = append(errs, fmt.Errorf("namespaced model: %w", err)) + } + + if a.ID == "" { + errs = append(errs, errors.New("id is required")) + } + + return errors.Join(errs...) +} + +// Progress is the identifier for a progress +type Progress struct { + ProgressID `json:"id"` + + // Success is the number of items that succeeded + Success uint64 `json:"success"` + // Failed is the number of items that failed + Failed uint64 `json:"failed"` + // The total number of items to process + Total uint64 `json:"total"` + // The time the progress was last updated + UpdatedAt time.Time `json:"updatedAt"` +} + +func (a *Progress) Validate() error { + var errs []error + + if err := a.ProgressID.Validate(); err != nil { + errs = append(errs, fmt.Errorf("progress id: %w", err)) + } + + if a.Success+a.Failed > a.Total { + errs = append(errs, errors.New("success and failed must be less than or equal to total")) + } + + if a.UpdatedAt.IsZero() { + errs = append(errs, errors.New("updated at is required")) + } + + return errors.Join(errs...) +} + +// Get progress is the input for the GetProgress method +type GetProgressInput struct { + ProgressID +} + +func (a *GetProgressInput) Validate() error { + var errs []error + + if err := a.ProgressID.Validate(); err != nil { + errs = append(errs, fmt.Errorf("progress id: %w", err)) + } + + return errors.Join(errs...) +} + +// UpsertProgressInput is the input for the UpsertProgress method +type UpsertProgressInput struct { + Progress +} + +func (a *UpsertProgressInput) Validate() error { + var errs []error + + if err := a.Progress.Validate(); err != nil { + errs = append(errs, fmt.Errorf("progress: %w", err)) + } + + return errors.Join(errs...) +} diff --git a/openmeter/progressmanager/errors.go b/openmeter/progressmanager/errors.go new file mode 100644 index 000000000..6de74f01f --- /dev/null +++ b/openmeter/progressmanager/errors.go @@ -0,0 +1,16 @@ +package progressmanager + +import ( + "fmt" +) + +var _ error = (*NotFoundError)(nil) + +type NotFoundError struct { + ID string + Entity string +} + +func (e NotFoundError) Error() string { + return fmt.Sprintf("not found: %s %s", e.Entity, e.ID) +} diff --git a/openmeter/progressmanager/httpdriver/errors.go b/openmeter/progressmanager/httpdriver/errors.go new file mode 100644 index 000000000..71002ac07 --- /dev/null +++ b/openmeter/progressmanager/httpdriver/errors.go @@ -0,0 +1,19 @@ +package httpdriver + +import ( + "context" + "net/http" + + "github.com/openmeterio/openmeter/openmeter/progressmanager" + "github.com/openmeterio/openmeter/pkg/framework/commonhttp" + "github.com/openmeterio/openmeter/pkg/framework/transport/httptransport" + "github.com/openmeterio/openmeter/pkg/models" +) + +func errorEncoder() httptransport.ErrorEncoder { + return func(ctx context.Context, err error, w http.ResponseWriter, r *http.Request) bool { + return commonhttp.HandleErrorIfTypeMatches[progressmanager.NotFoundError](ctx, http.StatusNotFound, err, w) || + commonhttp.HandleErrorIfTypeMatches[*models.GenericUserError](ctx, http.StatusBadRequest, err, w) || + commonhttp.HandleErrorIfTypeMatches[*models.GenericConflictError](ctx, http.StatusConflict, err, w) + } +} diff --git a/openmeter/progressmanager/httpdriver/handler.go b/openmeter/progressmanager/httpdriver/handler.go new file mode 100644 index 000000000..2502c960e --- /dev/null +++ b/openmeter/progressmanager/httpdriver/handler.go @@ -0,0 +1,49 @@ +package httpdriver + +import ( + "context" + "errors" + "net/http" + + "github.com/openmeterio/openmeter/openmeter/namespace/namespacedriver" + "github.com/openmeterio/openmeter/openmeter/progressmanager" + "github.com/openmeterio/openmeter/pkg/framework/commonhttp" + "github.com/openmeterio/openmeter/pkg/framework/transport/httptransport" +) + +type Handler interface { + ProgressHandler +} + +type ProgressHandler interface { + GetProgress() GetProgressHandler +} + +var _ Handler = (*handler)(nil) + +type handler struct { + service progressmanager.Service + namespaceDecoder namespacedriver.NamespaceDecoder + options []httptransport.HandlerOption +} + +func (h *handler) resolveNamespace(ctx context.Context) (string, error) { + ns, ok := h.namespaceDecoder.GetNamespace(ctx) + if !ok { + return "", commonhttp.NewHTTPError(http.StatusInternalServerError, errors.New("internal server error")) + } + + return ns, nil +} + +func New( + namespaceDecoder namespacedriver.NamespaceDecoder, + service progressmanager.Service, + options ...httptransport.HandlerOption, +) Handler { + return &handler{ + service: service, + namespaceDecoder: namespaceDecoder, + options: options, + } +} diff --git a/openmeter/progressmanager/httpdriver/progress.go b/openmeter/progressmanager/httpdriver/progress.go new file mode 100644 index 000000000..d04b053d0 --- /dev/null +++ b/openmeter/progressmanager/httpdriver/progress.go @@ -0,0 +1,70 @@ +package httpdriver + +import ( + "context" + "fmt" + "net/http" + + "github.com/openmeterio/openmeter/api" + progressmanagerentity "github.com/openmeterio/openmeter/openmeter/progressmanager/entity" + "github.com/openmeterio/openmeter/pkg/framework/commonhttp" + "github.com/openmeterio/openmeter/pkg/framework/transport/httptransport" + "github.com/openmeterio/openmeter/pkg/models" +) + +type ( + GetProgressRequest = progressmanagerentity.GetProgressInput + GetProgressResponse = api.Progress + GetProgressHandler httptransport.HandlerWithArgs[GetProgressRequest, GetProgressResponse, string] +) + +// GetProgress returns a handler for getting the progress by id. +func (h *handler) GetProgress() GetProgressHandler { + return httptransport.NewHandlerWithArgs( + func(ctx context.Context, r *http.Request, progressID string) (GetProgressRequest, error) { + ns, err := h.resolveNamespace(ctx) + if err != nil { + return GetProgressRequest{}, err + } + + return GetProgressRequest{ + ProgressID: progressmanagerentity.ProgressID{ + NamespacedModel: models.NamespacedModel{ + Namespace: ns, + }, + ID: progressID, + }, + }, nil + }, + func(ctx context.Context, request GetProgressRequest) (GetProgressResponse, error) { + progress, err := h.service.GetProgress(ctx, request) + if err != nil { + return GetProgressResponse{}, err + } + + if progress == nil { + return GetProgressResponse{}, fmt.Errorf("failed to get progress") + } + + apiProgress := progressToAPI(*progress) + + return apiProgress, nil + }, + commonhttp.JSONResponseEncoderWithStatus[GetProgressResponse](http.StatusOK), + httptransport.AppendOptions( + h.options, + httptransport.WithOperationName("getProgress"), + httptransport.WithErrorEncoder(errorEncoder()), + )..., + ) +} + +// progressToAPI converts a Progress to an API Progress +func progressToAPI(p progressmanagerentity.Progress) api.Progress { + return api.Progress{ + Success: p.Success, + Failed: p.Failed, + Total: p.Total, + UpdatedAt: p.UpdatedAt, + } +} diff --git a/openmeter/progressmanager/service.go b/openmeter/progressmanager/service.go new file mode 100644 index 000000000..b761b110a --- /dev/null +++ b/openmeter/progressmanager/service.go @@ -0,0 +1,16 @@ +package progressmanager + +import ( + "context" + + "github.com/openmeterio/openmeter/openmeter/progressmanager/entity" +) + +type Service interface { + ProgressManagerService +} + +type ProgressManagerService interface { + GetProgress(ctx context.Context, input entity.GetProgressInput) (*entity.Progress, error) + UpsertProgress(ctx context.Context, input entity.UpsertProgressInput) error +} diff --git a/openmeter/server/router/event.go b/openmeter/server/router/event.go index c36eb79bd..a16a9e952 100644 --- a/openmeter/server/router/event.go +++ b/openmeter/server/router/event.go @@ -32,45 +32,9 @@ func (a *Router) ListEvents(w http.ResponseWriter, r *http.Request, params api.L from := defaultx.WithDefault(params.From, minimumFrom) limit := defaultx.WithDefault(params.Limit, 100) - // Validate params - if from.Before(minimumFrom) { - err := fmt.Errorf("from date is too old: %s", from) - - a.config.ErrorHandler.HandleContext(ctx, errorsx.NewWarnError(err)) - models.NewStatusProblem(ctx, err, http.StatusBadRequest).Respond(w) - - return - } - - if params.To != nil && params.To.Before(from) { - err := fmt.Errorf("to date is before from date: %s < %s", params.To, params.From) - - a.config.ErrorHandler.HandleContext(ctx, errorsx.NewWarnError(err)) - models.NewStatusProblem(ctx, err, http.StatusBadRequest).Respond(w) - - return - } - - if params.IngestedAtFrom != nil && params.IngestedAtFrom.Before(minimumFrom) { - err := fmt.Errorf("ingestedAtFrom date is too old: %s", params.IngestedAtFrom) - - a.config.ErrorHandler.HandleContext(ctx, errorsx.NewWarnError(err)) - models.NewStatusProblem(ctx, err, http.StatusBadRequest).Respond(w) - - return - } - - if params.IngestedAtFrom != nil && params.IngestedAtTo != nil && params.IngestedAtTo.Before(*params.IngestedAtFrom) { - err := fmt.Errorf("ingestedAtTo date is before ingestedAtFrom date: %s < %s", params.IngestedAtTo, params.IngestedAtFrom) - - a.config.ErrorHandler.HandleContext(ctx, errorsx.NewWarnError(err)) - models.NewStatusProblem(ctx, err, http.StatusBadRequest).Respond(w) - - return - } - queryParams := streaming.ListEventsParams{ - From: &from, + ClientID: params.ClientId, + From: from, To: params.To, IngestedAtFrom: params.IngestedAtFrom, IngestedAtTo: params.IngestedAtTo, @@ -80,6 +44,16 @@ func (a *Router) ListEvents(w http.ResponseWriter, r *http.Request, params api.L Limit: limit, } + // Validate params + if err := queryParams.Validate(minimumFrom); err != nil { + err := fmt.Errorf("validate query params: %w", err) + + a.config.ErrorHandler.HandleContext(ctx, errorsx.NewWarnError(err)) + models.NewStatusProblem(ctx, err, http.StatusBadRequest).Respond(w) + + return + } + // Query events events, err := a.config.StreamingConnector.ListEvents(ctx, namespace, queryParams) if err != nil { diff --git a/openmeter/server/router/info.go b/openmeter/server/router/info.go index 7ea6ff18d..e709e9ed3 100644 --- a/openmeter/server/router/info.go +++ b/openmeter/server/router/info.go @@ -7,3 +7,9 @@ import "net/http" func (a *Router) ListCurrencies(w http.ResponseWriter, r *http.Request) { a.infoHandler.ListCurrencies().ServeHTTP(w, r) } + +// Get progress +// (GET /api/v1/info/progress/{progress_id}) +func (a *Router) GetProgress(w http.ResponseWriter, r *http.Request, progressID string) { + a.progressHandler.GetProgress().With(progressID).ServeHTTP(w, r) +} diff --git a/openmeter/server/router/meter_query.go b/openmeter/server/router/meter_query.go index 53d6963f3..ec8f2f4cf 100644 --- a/openmeter/server/router/meter_query.go +++ b/openmeter/server/router/meter_query.go @@ -52,6 +52,7 @@ func (a *Router) QueryMeter(w http.ResponseWriter, r *http.Request, meterIDOrSlu func (a *Router) QueryMeterWithMeter(ctx context.Context, w http.ResponseWriter, r *http.Request, logger *slog.Logger, meter models.Meter, params api.QueryMeterParams) { // Query Params queryParams := streaming.QueryParams{ + ClientID: params.ClientId, From: params.From, To: params.To, WindowSize: params.WindowSize, diff --git a/openmeter/server/router/router.go b/openmeter/server/router/router.go index 6c26fa489..4cd420979 100644 --- a/openmeter/server/router/router.go +++ b/openmeter/server/router/router.go @@ -40,6 +40,8 @@ import ( planhttpdriver "github.com/openmeterio/openmeter/openmeter/productcatalog/plan/httpdriver" plansubscription "github.com/openmeterio/openmeter/openmeter/productcatalog/subscription" subscriptionhttpdriver "github.com/openmeterio/openmeter/openmeter/productcatalog/subscription/http" + "github.com/openmeterio/openmeter/openmeter/progressmanager" + progresshttpdriver "github.com/openmeterio/openmeter/openmeter/progressmanager/httpdriver" "github.com/openmeterio/openmeter/openmeter/server/authenticator" "github.com/openmeterio/openmeter/openmeter/streaming" "github.com/openmeterio/openmeter/openmeter/subscription" @@ -91,6 +93,7 @@ type Config struct { GrantConnector credit.GrantConnector GrantRepo grant.Repo Notification notification.Service + ProgressManager progressmanager.Service // FIXME: implement generic module management, loading, etc... BillingEnabled bool @@ -145,6 +148,10 @@ func (c Config) Validate() error { return errors.New("notification service is required") } + if c.ProgressManager == nil { + return errors.New("progress manager service is required") + } + if c.AppsEnabled { if c.App == nil { return errors.New("app service is required") @@ -183,6 +190,7 @@ type Router struct { entitlementHandler entitlementdriver.EntitlementHandler meteredEntitlementHandler entitlementdriver.MeteredEntitlementHandler notificationHandler notificationhttpdriver.Handler + progressHandler progresshttpdriver.Handler infoHandler infohttpdriver.Handler } @@ -242,6 +250,12 @@ func NewRouter(config Config) (*Router, error) { httptransport.WithErrorHandler(config.ErrorHandler), ) + router.progressHandler = progresshttpdriver.New( + staticNamespaceDecoder, + config.ProgressManager, + httptransport.WithErrorHandler(config.ErrorHandler), + ) + // Customer router.customerHandler = customerhttpdriver.New( staticNamespaceDecoder, diff --git a/openmeter/server/server_test.go b/openmeter/server/server_test.go index 1ea1538e6..2847e14ce 100644 --- a/openmeter/server/server_test.go +++ b/openmeter/server/server_test.go @@ -38,6 +38,7 @@ import ( "github.com/openmeterio/openmeter/openmeter/namespace/namespacedriver" "github.com/openmeterio/openmeter/openmeter/notification" "github.com/openmeterio/openmeter/openmeter/productcatalog/feature" + progressmanageradapter "github.com/openmeterio/openmeter/openmeter/progressmanager/adapter" secretentity "github.com/openmeterio/openmeter/openmeter/secret/entity" "github.com/openmeterio/openmeter/openmeter/server/authenticator" "github.com/openmeterio/openmeter/openmeter/server/router" @@ -172,6 +173,7 @@ func makeRequest(r *http.Request) (*httptest.ResponseRecorder, error) { App: &NoopAppService{}, AppStripe: &NoopAppStripeService{}, Customer: &NoopCustomerService{}, + ProgressManager: progressmanageradapter.NewNoop(), }, RouterHook: func(r chi.Router) {}, }) diff --git a/openmeter/streaming/clickhouse/materialized_view/connector.go b/openmeter/streaming/clickhouse/materialized_view/connector.go index 9bf3be3d7..36d6c6c8f 100644 --- a/openmeter/streaming/clickhouse/materialized_view/connector.go +++ b/openmeter/streaming/clickhouse/materialized_view/connector.go @@ -11,6 +11,7 @@ import ( "github.com/openmeterio/openmeter/api" "github.com/openmeterio/openmeter/openmeter/meter" + "github.com/openmeterio/openmeter/openmeter/progressmanager" "github.com/openmeterio/openmeter/openmeter/streaming" raw_events "github.com/openmeterio/openmeter/openmeter/streaming/clickhouse/raw_events" "github.com/openmeterio/openmeter/pkg/models" @@ -36,6 +37,7 @@ type ConnectorConfig struct { AsyncInsertWait bool InsertQuerySettings map[string]string QueryRawEvents bool + ProgressManager progressmanager.Service } func (c ConnectorConfig) Validate() error { @@ -59,6 +61,10 @@ func (c ConnectorConfig) Validate() error { return fmt.Errorf("meters repository is required") } + if c.ProgressManager == nil { + return fmt.Errorf("progress manager is required") + } + return nil } @@ -75,6 +81,7 @@ func NewConnector(ctx context.Context, config ConnectorConfig) (*Connector, erro AsyncInsert: config.AsyncInsert, AsyncInsertWait: config.AsyncInsertWait, InsertQuerySettings: config.InsertQuerySettings, + ProgressManager: config.ProgressManager, }) if err != nil { return nil, fmt.Errorf("create raw event connector: %w", err) @@ -167,7 +174,7 @@ func (c *Connector) QueryMeter(ctx context.Context, namespace string, meter mode return nil, err } - return nil, fmt.Errorf("get values: %w", err) + return nil, err } // If the total usage is queried for a single period (no window size), diff --git a/openmeter/streaming/clickhouse/raw_events/connector.go b/openmeter/streaming/clickhouse/raw_events/connector.go index 3611fdaae..834ed47e2 100644 --- a/openmeter/streaming/clickhouse/raw_events/connector.go +++ b/openmeter/streaming/clickhouse/raw_events/connector.go @@ -12,8 +12,11 @@ import ( "github.com/ClickHouse/clickhouse-go/v2" "github.com/cloudevents/sdk-go/v2/event" "github.com/shopspring/decimal" + "golang.org/x/exp/constraints" "github.com/openmeterio/openmeter/api" + "github.com/openmeterio/openmeter/openmeter/progressmanager" + progressmanagerentity "github.com/openmeterio/openmeter/openmeter/progressmanager/entity" "github.com/openmeterio/openmeter/openmeter/streaming" "github.com/openmeterio/openmeter/pkg/models" ) @@ -33,6 +36,7 @@ type ConnectorConfig struct { AsyncInsert bool AsyncInsertWait bool InsertQuerySettings map[string]string + ProgressManager progressmanager.Service } func (c ConnectorConfig) Validate() error { @@ -52,6 +56,10 @@ func (c ConnectorConfig) Validate() error { return fmt.Errorf("events table is required") } + if c.ProgressManager == nil { + return fmt.Errorf("progress manager is required") + } + return nil } @@ -110,7 +118,7 @@ func (c *Connector) QueryMeter(ctx context.Context, namespace string, meter mode return nil, err } - return nil, fmt.Errorf("get values: %w", err) + return nil, err } // If the total usage is queried for a single period (no window size), @@ -221,6 +229,8 @@ func (c *Connector) createEventsTable(ctx context.Context) error { } func (c *Connector) queryEventsTable(ctx context.Context, namespace string, params streaming.ListEventsParams) ([]api.IngestedEvent, error) { + var err error + table := queryEventsTable{ Database: c.config.Database, EventsTableName: c.config.EventsTableName, @@ -235,6 +245,18 @@ func (c *Connector) queryEventsTable(ctx context.Context, namespace string, para Limit: params.Limit, } + // If the client ID is set, we track track the progress of the query + if params.ClientID != nil { + // Build SQL query to count the total number of rows + countSQL, countArgs := table.toCountRowSQL() + + ctx, err = c.withProgressContext(ctx, namespace, *params.ClientID, countSQL, countArgs) + // Log error but don't return it + if err != nil { + c.config.Logger.Error("failed track progress", "error", err, "clientId", *params.ClientID) + } + } + sql, args := table.toSQL() rows, err := c.config.ClickHouse.Query(ctx, sql, args...) @@ -246,6 +268,8 @@ func (c *Connector) queryEventsTable(ctx context.Context, namespace string, para return nil, fmt.Errorf("query events table query: %w", err) } + defer rows.Close() + events := []api.IngestedEvent{} for rows.Next() { @@ -300,6 +324,10 @@ func (c *Connector) queryEventsTable(ctx context.Context, namespace string, para events = append(events, ingestedEvent) } + if err = rows.Err(); err != nil { + return nil, fmt.Errorf("query events table rows error: %w", err) + } + return events, nil } @@ -324,6 +352,8 @@ func (c *Connector) queryCountEvents(ctx context.Context, namespace string, para results := []streaming.CountEventRow{} + defer rows.Close() + for rows.Next() { result := streaming.CountEventRow{} @@ -334,6 +364,10 @@ func (c *Connector) queryCountEvents(ctx context.Context, namespace string, para results = append(results, result) } + if err = rows.Err(); err != nil { + return nil, fmt.Errorf("query events count rows error: %w", err) + } + return results, nil } @@ -364,6 +398,18 @@ func (c *Connector) queryMeter(ctx context.Context, namespace string, meter mode return values, fmt.Errorf("query meter view: %w", err) } + // If the client ID is set, we track track the progress of the query + if params.ClientID != nil { + // Build SQL query to count the total number of rows + countSQL, countArgs := queryMeter.toCountRowSQL() + + ctx, err = c.withProgressContext(ctx, namespace, *params.ClientID, countSQL, countArgs) + // Log error but don't return it + if err != nil { + c.config.Logger.Error("failed track progress", "error", err, "clientId", *params.ClientID) + } + } + start := time.Now() rows, err := c.config.ClickHouse.Query(ctx, sql, args...) if err != nil { @@ -376,6 +422,8 @@ func (c *Connector) queryMeter(ctx context.Context, namespace string, meter mode elapsed := time.Since(start) slog.Debug("query meter view", "elapsed", elapsed.String(), "sql", sql, "args", args) + defer rows.Close() + for rows.Next() { row := models.MeterQueryRow{ GroupBy: map[string]*string{}, @@ -421,7 +469,7 @@ func (c *Connector) queryMeter(ctx context.Context, namespace string, meter mode values = append(values, row) } - rows.Close() + err = rows.Err() if err != nil { return values, fmt.Errorf("query meter rows error: %w", err) @@ -451,6 +499,8 @@ func (c *Connector) listMeterViewSubjects(ctx context.Context, namespace string, return nil, fmt.Errorf("list meter view subjects: %w", err) } + defer rows.Close() + subjects := []string{} for rows.Next() { var subject string @@ -461,5 +511,69 @@ func (c *Connector) listMeterViewSubjects(ctx context.Context, namespace string, subjects = append(subjects, subject) } + if err = rows.Err(); err != nil { + return nil, fmt.Errorf("list meter view subjects rows error: %w", err) + } + return subjects, nil } + +// withProgressContext wraps the context with a progress tracking +func (c *Connector) withProgressContext(ctx context.Context, namespace string, clientID string, countSQL string, countArgs []interface{}) (context.Context, error) { + totalRows := uint64(0) + successRows := uint64(0) + + // Count the total number of rows + countRows, err := c.config.ClickHouse.Query(ctx, countSQL, countArgs...) + if err != nil { + return ctx, fmt.Errorf("count query: %w", err) + } + + defer countRows.Close() + + for countRows.Next() { + if err := countRows.Scan(&totalRows); err != nil { + return ctx, fmt.Errorf("count row scan: %w", err) + } + } + + if err := countRows.Err(); err != nil { + return ctx, fmt.Errorf("count rows error: %w", err) + } + + // Use context to pass a call back for progress and profile info + ctx = clickhouse.Context(ctx, clickhouse.WithProgress(func(p *clickhouse.Progress) { + successRows += p.Rows + + progress := progressmanagerentity.Progress{ + ProgressID: progressmanagerentity.ProgressID{ + NamespacedModel: models.NamespacedModel{ + Namespace: namespace, + }, + ID: clientID, + }, + Total: totalRows, + // Rows it scans is maybe more than the total rows returned by the count query + Success: min(successRows, totalRows), + UpdatedAt: time.Now(), + } + + // Update progress + err = c.config.ProgressManager.UpsertProgress(ctx, progressmanagerentity.UpsertProgressInput{ + Progress: progress, + }) + // Log error but don't return it + if err != nil { + c.config.Logger.Error("failed to upsert progress", "error", err) + } + })) + + return ctx, nil +} + +func min[T constraints.Ordered](a, b T) T { + if a < b { + return a + } + return b +} diff --git a/openmeter/streaming/clickhouse/raw_events/event_query.go b/openmeter/streaming/clickhouse/raw_events/event_query.go index afde09936..37d2ee3f6 100644 --- a/openmeter/streaming/clickhouse/raw_events/event_query.go +++ b/openmeter/streaming/clickhouse/raw_events/event_query.go @@ -52,7 +52,7 @@ type queryEventsTable struct { Database string EventsTableName string Namespace string - From *time.Time + From time.Time To *time.Time IngestedAtFrom *time.Time IngestedAtTo *time.Time @@ -62,41 +62,62 @@ type queryEventsTable struct { Limit int } +// toCountRowSQL returns the SQL query for the estimated number of rows. +// This estimate is useful for query progress tracking. +// We only filter by columns that are in the ClickHouse table order. +func (d queryEventsTable) toCountRowSQL() (string, []interface{}) { + tableName := getTableName(d.Database, d.EventsTableName) + + query := sqlbuilder.ClickHouse.NewSelectBuilder() + query.Select("count() as total") + query.From(tableName) + + query.Where(query.Equal("namespace", d.Namespace)) + query.Where(query.GreaterEqualThan("time", d.From.Unix())) + + if d.To != nil { + query.Where(query.LessEqualThan("time", d.To.Unix())) + } + if d.Subject != nil { + query.Where(query.Equal("subject", *d.Subject)) + } + + sql, args := query.Build() + return sql, args +} + func (d queryEventsTable) toSQL() (string, []interface{}) { tableName := getTableName(d.Database, d.EventsTableName) - where := []string{} query := sqlbuilder.ClickHouse.NewSelectBuilder() query.Select("id", "type", "subject", "source", "time", "data", "validation_error", "ingested_at", "stored_at") query.From(tableName) - where = append(where, query.Equal("namespace", d.Namespace)) - if d.From != nil { - where = append(where, query.GreaterEqualThan("time", d.From.Unix())) - } + query.Where(query.Equal("namespace", d.Namespace)) + query.Where(query.GreaterEqualThan("time", d.From.Unix())) + if d.To != nil { - where = append(where, query.LessEqualThan("time", d.To.Unix())) + query.Where(query.LessEqualThan("time", d.To.Unix())) } if d.IngestedAtFrom != nil { - where = append(where, query.GreaterEqualThan("ingested_at", d.IngestedAtFrom.Unix())) + query.Where(query.GreaterEqualThan("ingested_at", d.IngestedAtFrom.Unix())) } if d.IngestedAtTo != nil { - where = append(where, query.LessEqualThan("ingested_at", d.IngestedAtTo.Unix())) + query.Where(query.LessEqualThan("ingested_at", d.IngestedAtTo.Unix())) } if d.ID != nil { - where = append(where, query.Like("id", fmt.Sprintf("%%%s%%", *d.ID))) + query.Where(query.Like("id", fmt.Sprintf("%%%s%%", *d.ID))) } if d.Subject != nil { - where = append(where, query.Equal("subject", *d.Subject)) + query.Where(query.Equal("subject", *d.Subject)) } if d.HasError != nil { if *d.HasError { - where = append(where, "notEmpty(validation_error) = 1") + query.Where("notEmpty(validation_error) = 1") } else { - where = append(where, "empty(validation_error) = 1") + query.Where("empty(validation_error) = 1") } } - query.Where(where...) query.Desc().OrderBy("time") query.Limit(d.Limit) diff --git a/openmeter/streaming/clickhouse/raw_events/event_query_test.go b/openmeter/streaming/clickhouse/raw_events/event_query_test.go index 278593f63..ee7445018 100644 --- a/openmeter/streaming/clickhouse/raw_events/event_query_test.go +++ b/openmeter/streaming/clickhouse/raw_events/event_query_test.go @@ -37,6 +37,7 @@ func TestQueryEventsTable(t *testing.T) { idFilter := "event-id-1" hasErrorTrue := true hasErrorFalse := false + from := time.Now() tests := []struct { query queryEventsTable @@ -48,32 +49,35 @@ func TestQueryEventsTable(t *testing.T) { Database: "openmeter", EventsTableName: "om_events", Namespace: "my_namespace", + From: from, Limit: 100, }, - wantSQL: "SELECT id, type, subject, source, time, data, validation_error, ingested_at, stored_at FROM openmeter.om_events WHERE namespace = ? ORDER BY time DESC LIMIT 100", - wantArgs: []interface{}{"my_namespace"}, + wantSQL: "SELECT id, type, subject, source, time, data, validation_error, ingested_at, stored_at FROM openmeter.om_events WHERE namespace = ? AND time >= ? ORDER BY time DESC LIMIT 100", + wantArgs: []interface{}{"my_namespace", from.Unix()}, }, { query: queryEventsTable{ Database: "openmeter", EventsTableName: "om_events", Namespace: "my_namespace", + From: from, Limit: 100, Subject: &subjectFilter, }, - wantSQL: "SELECT id, type, subject, source, time, data, validation_error, ingested_at, stored_at FROM openmeter.om_events WHERE namespace = ? AND subject = ? ORDER BY time DESC LIMIT 100", - wantArgs: []interface{}{"my_namespace", subjectFilter}, + wantSQL: "SELECT id, type, subject, source, time, data, validation_error, ingested_at, stored_at FROM openmeter.om_events WHERE namespace = ? AND time >= ? AND subject = ? ORDER BY time DESC LIMIT 100", + wantArgs: []interface{}{"my_namespace", from.Unix(), subjectFilter}, }, { query: queryEventsTable{ Database: "openmeter", EventsTableName: "om_events", Namespace: "my_namespace", + From: from, Limit: 100, ID: &idFilter, }, - wantSQL: "SELECT id, type, subject, source, time, data, validation_error, ingested_at, stored_at FROM openmeter.om_events WHERE namespace = ? AND id LIKE ? ORDER BY time DESC LIMIT 100", - wantArgs: []interface{}{"my_namespace", "%event-id-1%"}, + wantSQL: "SELECT id, type, subject, source, time, data, validation_error, ingested_at, stored_at FROM openmeter.om_events WHERE namespace = ? AND time >= ? AND id LIKE ? ORDER BY time DESC LIMIT 100", + wantArgs: []interface{}{"my_namespace", from.Unix(), "%event-id-1%"}, }, { query: queryEventsTable{ @@ -81,21 +85,23 @@ func TestQueryEventsTable(t *testing.T) { EventsTableName: "om_events", Namespace: "my_namespace", Limit: 100, + From: from, HasError: &hasErrorTrue, }, - wantSQL: "SELECT id, type, subject, source, time, data, validation_error, ingested_at, stored_at FROM openmeter.om_events WHERE namespace = ? AND notEmpty(validation_error) = 1 ORDER BY time DESC LIMIT 100", - wantArgs: []interface{}{"my_namespace"}, + wantSQL: "SELECT id, type, subject, source, time, data, validation_error, ingested_at, stored_at FROM openmeter.om_events WHERE namespace = ? AND time >= ? AND notEmpty(validation_error) = 1 ORDER BY time DESC LIMIT 100", + wantArgs: []interface{}{"my_namespace", from.Unix()}, }, { query: queryEventsTable{ Database: "openmeter", EventsTableName: "om_events", Namespace: "my_namespace", + From: from, Limit: 100, HasError: &hasErrorFalse, }, - wantSQL: "SELECT id, type, subject, source, time, data, validation_error, ingested_at, stored_at FROM openmeter.om_events WHERE namespace = ? AND empty(validation_error) = 1 ORDER BY time DESC LIMIT 100", - wantArgs: []interface{}{"my_namespace"}, + wantSQL: "SELECT id, type, subject, source, time, data, validation_error, ingested_at, stored_at FROM openmeter.om_events WHERE namespace = ? AND time >= ? AND empty(validation_error) = 1 ORDER BY time DESC LIMIT 100", + wantArgs: []interface{}{"my_namespace", from.Unix()}, }, } diff --git a/openmeter/streaming/clickhouse/raw_events/meter_query.go b/openmeter/streaming/clickhouse/raw_events/meter_query.go index 345cda902..95e3862b4 100644 --- a/openmeter/streaming/clickhouse/raw_events/meter_query.go +++ b/openmeter/streaming/clickhouse/raw_events/meter_query.go @@ -26,7 +26,44 @@ type queryMeter struct { WindowTimeZone *time.Location } -func (d queryMeter) toSQL() (string, []interface{}, error) { +// toCountRowSQL returns the SQL query for the estimated number of rows. +// This estimate is useful for query progress tracking. +// We only filter by columns that are in the ClickHouse table order. +func (d *queryMeter) toCountRowSQL() (string, []interface{}) { + tableName := getTableName(d.Database, d.EventsTableName) + getColumn := columnFactory(d.EventsTableName) + + query := sqlbuilder.ClickHouse.NewSelectBuilder() + query.Select("count() AS total") + query.From(tableName) + + // The event table is ordered by namespace, type + query.Where(query.Equal("namespace", d.Namespace)) + query.Where(query.Equal("type", d.Meter.EventType)) + + if len(d.Subject) > 0 { + mapFunc := func(subject string) string { + return query.Equal(getColumn("subject"), subject) + } + + query.Where(query.Or(slicesx.Map(d.Subject, mapFunc)...)) + } + + // TODO: should we swap subject and time in order? + // The event table is partitioned by time + if d.From != nil { + query.Where(query.GreaterEqualThan(getColumn("time"), d.From.Unix())) + } + + if d.To != nil { + query.Where(query.LessEqualThan(getColumn("time"), d.To.Unix())) + } + + sql, args := query.Build() + return sql, args +} + +func (d *queryMeter) toSQL() (string, []interface{}, error) { tableName := getTableName(d.Database, d.EventsTableName) getColumn := columnFactory(d.EventsTableName) timeColumn := getColumn("time") @@ -170,11 +207,11 @@ func (d queryMeter) toSQL() (string, []interface{}, error) { } if d.From != nil { - where = append(where, query.GreaterEqualThan(getColumn("time"), d.From.Unix())) + where = append(where, query.GreaterEqualThan(timeColumn, d.From.Unix())) } if d.To != nil { - where = append(where, query.LessEqualThan(getColumn("time"), d.To.Unix())) + where = append(where, query.LessEqualThan(timeColumn, d.To.Unix())) } if len(where) > 0 { diff --git a/openmeter/streaming/connector.go b/openmeter/streaming/connector.go index 29cffdc71..aaa391898 100644 --- a/openmeter/streaming/connector.go +++ b/openmeter/streaming/connector.go @@ -9,33 +9,6 @@ import ( "github.com/openmeterio/openmeter/pkg/models" ) -type ListEventsParams struct { - From *time.Time - To *time.Time - IngestedAtFrom *time.Time - IngestedAtTo *time.Time - ID *string - Subject *string - HasError *bool - Limit int -} - -type CountEventsParams struct { - From time.Time -} - -// CountEventRow represents a row in the count events response. -type CountEventRow struct { - Count uint64 - Subject string - IsError bool -} - -type ListMeterSubjectsParams struct { - From *time.Time - To *time.Time -} - // RawEvent represents a single raw event type RawEvent struct { Namespace string @@ -50,6 +23,13 @@ type RawEvent struct { StoredAt time.Time } +// CountEventRow represents a row in the count events response. +type CountEventRow struct { + Count uint64 + Subject string + IsError bool +} + type Connector interface { namespace.Handler diff --git a/openmeter/streaming/query_params.go b/openmeter/streaming/query_params.go index 4fdd3e023..f5edb1b3b 100644 --- a/openmeter/streaming/query_params.go +++ b/openmeter/streaming/query_params.go @@ -9,6 +9,7 @@ import ( ) type QueryParams struct { + ClientID *string From *time.Time To *time.Time FilterSubject []string @@ -20,6 +21,10 @@ type QueryParams struct { // Validate validates query params focusing on `from` and `to` being aligned with query and meter window sizes func (p *QueryParams) Validate(meter models.Meter) error { + if p.ClientID != nil && len(*p.ClientID) == 0 { + return errors.New("client id cannot be empty") + } + if p.From != nil && p.To != nil { if !p.To.After(*p.From) { return errors.New("to must be after from") @@ -70,6 +75,65 @@ func isRoundedToWindowSize(windowSize models.WindowSize, from *time.Time, to *ti return nil } +type ListEventsParams struct { + ClientID *string + From time.Time + To *time.Time + IngestedAtFrom *time.Time + IngestedAtTo *time.Time + ID *string + Subject *string + HasError *bool + Limit int +} + +func (p ListEventsParams) Validate(minimumFrom time.Time) error { + var errs []error + + if p.ClientID != nil && *p.ClientID == "" { + errs = append(errs, errors.New("clientID is empty")) + } + + if p.From.Before(minimumFrom) { + errs = append(errs, fmt.Errorf("from date is too old: %s", p.From)) + } + + if p.To != nil && p.To.Before(p.From) { + errs = append(errs, fmt.Errorf("to date is before from date: %s < %s", p.To, p.From)) + } + + if p.IngestedAtFrom != nil && p.IngestedAtFrom.Before(minimumFrom) { + errs = append(errs, fmt.Errorf("ingestedAtFrom date is too old: %s", p.IngestedAtFrom)) + } + + if p.IngestedAtFrom != nil && p.IngestedAtTo != nil && p.IngestedAtTo.Before(*p.IngestedAtFrom) { + errs = append(errs, fmt.Errorf("ingestedAtTo date is before ingestedAtFrom date: %s < %s", p.IngestedAtTo, p.IngestedAtFrom)) + } + + if p.Limit <= 0 { + errs = append(errs, errors.New("limit must be greater than 0")) + } + + if p.ID != nil && *p.ID == "" { + errs = append(errs, errors.New("id is empty")) + } + + if p.Subject != nil && *p.Subject == "" { + errs = append(errs, errors.New("subject is empty")) + } + + return errors.Join(errs...) +} + +type CountEventsParams struct { + From time.Time +} + +type ListMeterSubjectsParams struct { + From *time.Time + To *time.Time +} + // Is rounded to minute like YYYY-MM-DDTHH:mm:00 func isMinuteRounded(t time.Time) bool { return t.Second() == 0 diff --git a/pkg/redis/config.go b/pkg/redis/config.go index c4378c4b5..c8003529f 100644 --- a/pkg/redis/config.go +++ b/pkg/redis/config.go @@ -1,5 +1,13 @@ package redis +import ( + "errors" + "fmt" + + "github.com/redis/go-redis/v9" + "github.com/spf13/viper" +) + // Config stores the user provided configuration parameters type Config struct { Address string @@ -15,3 +23,39 @@ type Config struct { InsecureSkipVerify bool } } + +// Validate checks if the configuration is valid +func (c Config) Validate() error { + var errs []error + + if c.Address == "" { + errs = append(errs, errors.New("address is required")) + } + + if c.Sentinel.Enabled { + if c.Sentinel.MasterName == "" { + errs = append(errs, errors.New("sentinel: master name is required")) + } + } + + return errors.Join(errs...) +} + +// New client returns a redis client returns a redis client from the provided configuration +func (c Config) NewClient() (*redis.Client, error) { + return NewClient(Options{Config: c}) +} + +// Configure sets the default values for the Redis configuration +func Configure(v *viper.Viper, prefix string) { + // Redis driver + v.SetDefault(fmt.Sprintf("%s.address", prefix), "127.0.0.1:6379") + v.SetDefault(fmt.Sprintf("%s.database", prefix), 0) + v.SetDefault(fmt.Sprintf("%s.username", prefix), "") + v.SetDefault(fmt.Sprintf("%s.password", prefix), "") + v.SetDefault(fmt.Sprintf("%s.expiration", prefix), "24h") + v.SetDefault(fmt.Sprintf("%s.sentinel.enabled", prefix), false) + v.SetDefault(fmt.Sprintf("%s.sentinel.masterName", prefix), "") + v.SetDefault(fmt.Sprintf("%s.tls.enabled", prefix), false) + v.SetDefault(fmt.Sprintf("%s.tls.insecureSkipVerify", prefix), false) +}