37
37
38
38
const (
39
39
createEventDelivery = `
40
- INSERT INTO convoy.event_deliveries (id,project_id,event_id,endpoint_id,device_id,subscription_id,headers,attempts,status,metadata,cli_metadata,description,url_query_params,idempotency_key,created_at,updated_at)
41
- VALUES ($1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14,$15,$16);
40
+ INSERT INTO convoy.event_deliveries (id,project_id,event_id,endpoint_id,device_id,subscription_id,headers,attempts,status,metadata,cli_metadata,description,url_query_params,idempotency_key,event_type, created_at,updated_at)
41
+ VALUES ($1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14,$15,$16,$17 );
42
42
`
43
43
44
44
baseFetchEventDelivery = `
@@ -48,6 +48,7 @@ const (
48
48
COALESCE(ed.url_query_params, '') AS url_query_params,
49
49
COALESCE(ed.idempotency_key, '') AS idempotency_key,
50
50
ed.description,ed.created_at,ed.updated_at,
51
+ COALESCE(ed.event_type,'') AS "event_type",
51
52
COALESCE(ed.device_id,'') AS "device_id",
52
53
COALESCE(ed.endpoint_id,'') AS "endpoint_id",
53
54
COALESCE(ep.id, '') AS "endpoint_metadata.id",
@@ -84,9 +85,7 @@ const (
84
85
LIMIT :limit
85
86
)
86
87
87
- SELECT * FROM event_deliveries
88
- WHERE ("event_metadata.event_type" = :event_type OR :event_type = '')
89
- ORDER BY id %s
88
+ SELECT * FROM event_deliveries ORDER BY id %s
90
89
`
91
90
92
91
baseEventDeliveryPagedBackward = `
@@ -99,32 +98,27 @@ const (
99
98
LIMIT :limit
100
99
)
101
100
102
- SELECT * FROM event_deliveries
103
- WHERE ("event_metadata.event_type" = :event_type OR :event_type = '')
104
- ORDER BY id %s
101
+ SELECT * FROM event_deliveries ORDER BY id %s
105
102
`
106
103
107
104
fetchEventDeliveryByID = baseFetchEventDelivery + ` AND ed.id = $1 AND ed.project_id = $2`
108
105
109
106
baseEventDeliveryFilter = ` AND (ed.project_id = :project_id OR :project_id = '')
110
107
AND (ed.event_id = :event_id OR :event_id = '')
108
+ AND (ed.event_type = :event_type OR :event_type = '')
111
109
AND ed.created_at >= :start_date
112
110
AND ed.created_at <= :end_date
113
111
AND ed.deleted_at IS NULL`
114
112
115
113
countPrevEventDeliveries = `
116
- WITH event_deliveries AS (
117
- SELECT ed.id AS "id", ev.event_type AS "event_type"
118
- FROM convoy.event_deliveries ed
119
- LEFT JOIN convoy.events ev ON ed.event_id = ev.id
120
- WHERE ed.deleted_at IS NULL
121
- %s
122
- AND ed.id > :cursor
123
- GROUP BY ed.id, ev.id
124
- ORDER BY ed.id %s
125
- )
126
-
127
- SELECT COUNT(DISTINCT("id")) AS count FROM event_deliveries WHERE ("event_type" = :event_type OR :event_type = '')
114
+ SELECT COUNT(DISTINCT(ed.id))
115
+ FROM convoy.event_deliveries ed
116
+ LEFT JOIN convoy.events ev ON ed.event_id = ev.id
117
+ WHERE ed.deleted_at IS NULL
118
+ %s
119
+ AND ed.id > :cursor
120
+ GROUP BY ed.id, ev.id
121
+ ORDER BY ed.id %s
128
122
`
129
123
130
124
loadEventDeliveriesIntervals = `
@@ -153,6 +147,7 @@ const (
153
147
COALESCE(ed.idempotency_key, '') AS idempotency_key,
154
148
COALESCE(url_query_params, '') AS url_query_params,
155
149
description,created_at,updated_at,
150
+ COALESCE(event_type,'') AS "event_type",
156
151
COALESCE(device_id,'') AS "device_id",
157
152
COALESCE(endpoint_id,'') AS "endpoint_id"
158
153
FROM convoy.event_deliveries ed
@@ -165,6 +160,7 @@ const (
165
160
COALESCE(idempotency_key, '') AS idempotency_key,
166
161
COALESCE(url_query_params, '') AS url_query_params,
167
162
description,created_at,updated_at,
163
+ COALESCE(event_type,'') AS "event_type",
168
164
COALESCE(device_id,'') AS "device_id"
169
165
FROM convoy.event_deliveries
170
166
WHERE status=$1 AND project_id = $2 AND device_id = $3
@@ -217,7 +213,7 @@ func (e *eventDeliveryRepo) CreateEventDelivery(ctx context.Context, delivery *d
217
213
ctx , createEventDelivery , delivery .UID , delivery .ProjectID ,
218
214
delivery .EventID , endpointID , deviceID ,
219
215
delivery .SubscriptionID , delivery .Headers , delivery .DeliveryAttempts , delivery .Status ,
220
- delivery .Metadata , delivery .CLIMetadata , delivery .Description , delivery .URLQueryParams , delivery .IdempotencyKey ,
216
+ delivery .Metadata , delivery .CLIMetadata , delivery .Description , delivery .URLQueryParams , delivery .IdempotencyKey , delivery . EventType ,
221
217
delivery .CreatedAt , delivery .UpdatedAt ,
222
218
)
223
219
if err != nil {
@@ -580,6 +576,7 @@ func (e *eventDeliveryRepo) LoadEventDeliveriesPaged(ctx context.Context, projec
580
576
Headers : ev .Headers ,
581
577
URLQueryParams : ev .URLQueryParams ,
582
578
Latency : ev .Latency ,
579
+ EventType : ev .EventType ,
583
580
Endpoint : & datastore.Endpoint {
584
581
UID : ev .Endpoint .UID .ValueOrZero (),
585
582
ProjectID : ev .Endpoint .ProjectID .ValueOrZero (),
@@ -824,6 +821,7 @@ type EventDeliveryPaginated struct {
824
821
URLQueryParams string `json:"url_query_params" db:"url_query_params"`
825
822
IdempotencyKey string `json:"idempotency_key" db:"idempotency_key"`
826
823
Latency string `json:"latency" db:"latency"`
824
+ EventType datastore.EventType `json:"event_type,omitempty" db:"event_type"`
827
825
828
826
Endpoint * EndpointMetadata `json:"endpoint_metadata,omitempty" db:"endpoint_metadata"`
829
827
Event * EventMetadata `json:"event_metadata,omitempty" db:"event_metadata"`
0 commit comments