@levrbet/shared 0.4.54 → 0.4.55
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -17,5 +17,6 @@ export declare class BaseQueueManager {
|
|
|
17
17
|
addToQueue(connection: ChannelModel, identifier: string, exchangeIdentifier: string, data: unknown, priority?: number): Promise<boolean>;
|
|
18
18
|
deleteQueue(connection: ChannelModel, identifier: string): Promise<void>;
|
|
19
19
|
checkQueueExists(connection: ChannelModel, identifier: string): Promise<boolean>;
|
|
20
|
+
isQueueNotFoundError(error: unknown): Promise<boolean>;
|
|
20
21
|
isQueueEmpty(connection: ChannelModel, identifier: string): Promise<boolean>;
|
|
21
22
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.BaseQueueManager = void 0;
|
|
4
|
-
|
|
4
|
+
// import { AlertSeverity, sendAdminAlert } from "../../../core"
|
|
5
5
|
const config_1 = require("../../config");
|
|
6
6
|
class BaseQueueManager {
|
|
7
7
|
constructor(config) {
|
|
@@ -21,15 +21,21 @@ class BaseQueueManager {
|
|
|
21
21
|
config_1.logger.error(`Unknown error: ${error}`);
|
|
22
22
|
config_1.logger.debug(`${message} ${this.config.className} ${functionName}`);
|
|
23
23
|
}
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
24
|
+
//temp pause alerting until we have more confidence in the stability of the queues
|
|
25
|
+
// void sendAdminAlert(
|
|
26
|
+
// {
|
|
27
|
+
// title: `Error in ${this.config.className} ${functionName}`,
|
|
28
|
+
// message: error instanceof Error ? error.stack || error.message : String(error),
|
|
29
|
+
// description: `${message} in ${this.config.className} ${functionName}`,
|
|
30
|
+
// severity: AlertSeverity.HIGH,
|
|
31
|
+
// type: "error",
|
|
32
|
+
// timestamp: new Date(),
|
|
33
|
+
// id: `${this.config.className}-${functionName}-${Date.now()}`,
|
|
34
|
+
// },
|
|
35
|
+
// LEVR_ENV
|
|
36
|
+
// ).catch((alertError) => {
|
|
37
|
+
// logger.error(`Failed to send admin alert: ${alertError instanceof Error ? alertError.stack || alertError.message : String(alertError)}`)
|
|
38
|
+
// })
|
|
33
39
|
}
|
|
34
40
|
generateQueueName(identifier) {
|
|
35
41
|
// if (this.config.isLiquidationEngineQueue && !identifier.endsWith(this.liquidationEngineQueueSuffix)) {
|
|
@@ -103,21 +109,36 @@ class BaseQueueManager {
|
|
|
103
109
|
}
|
|
104
110
|
}
|
|
105
111
|
async checkQueueExists(connection, identifier) {
|
|
112
|
+
const queueName = this.config.queuePrefix + identifier;
|
|
106
113
|
try {
|
|
107
114
|
return await this.withChannel(connection, async (channel) => {
|
|
108
|
-
|
|
109
|
-
|
|
115
|
+
try {
|
|
116
|
+
await channel.checkQueue(queueName);
|
|
117
|
+
return true;
|
|
118
|
+
}
|
|
119
|
+
catch (error) {
|
|
120
|
+
// checkQueue throws + kills the channel on 404
|
|
121
|
+
// catch it HERE before withChannel sees it
|
|
122
|
+
if (await this.isQueueNotFoundError(error)) {
|
|
123
|
+
config_1.logger.info(this.config.className, "checkQueueExists", `Queue does not exist: ${queueName}`);
|
|
124
|
+
return false;
|
|
125
|
+
}
|
|
126
|
+
throw error; // re-throw anything unexpected
|
|
127
|
+
}
|
|
110
128
|
});
|
|
111
129
|
}
|
|
112
130
|
catch (error) {
|
|
113
|
-
if (error instanceof Error && error.message.includes("NOT_FOUND")) {
|
|
114
|
-
config_1.logger.info(this.config.className, "checkQueueExists", `Queue does not exist: ${this.config.queuePrefix + identifier}`);
|
|
115
|
-
return false;
|
|
116
|
-
}
|
|
117
131
|
this.handleError("checkQueueExists", error, "Failed to check queue existence");
|
|
118
|
-
|
|
132
|
+
throw error;
|
|
119
133
|
}
|
|
120
134
|
}
|
|
135
|
+
async isQueueNotFoundError(error) {
|
|
136
|
+
if (!(error instanceof Error))
|
|
137
|
+
return false;
|
|
138
|
+
const amqpError = error;
|
|
139
|
+
return (amqpError.code === 404 || error.message.includes("NOT_FOUND") || error.message.includes("Channel ended") // dead channel from a 404
|
|
140
|
+
);
|
|
141
|
+
}
|
|
121
142
|
async isQueueEmpty(connection, identifier) {
|
|
122
143
|
try {
|
|
123
144
|
return await this.withChannel(connection, async (channel) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.queue.manager.js","sourceRoot":"","sources":["../../../../src/server/oracle/rmq-manager/base.queue.manager.ts"],"names":[],"mappings":";;;AACA,
|
|
1
|
+
{"version":3,"file":"base.queue.manager.js","sourceRoot":"","sources":["../../../../src/server/oracle/rmq-manager/base.queue.manager.ts"],"names":[],"mappings":";;;AACA,gEAAgE;AAChE,yCAAqC;AAWrC,MAAa,gBAAgB;IAGzB,YAAY,MAAmB;QAC3B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACxB,CAAC;IAES,KAAK,CAAC,WAAW,CAAI,UAAwB,EAAE,SAA2C;QAChG,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,aAAa,EAAE,CAAA;QAChD,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,CAAA;QACvC,MAAM,OAAO,CAAC,KAAK,EAAE,CAAA;QACrB,OAAO,MAAM,CAAA;IACjB,CAAC;IAES,WAAW,CAAC,YAAoB,EAAE,KAAc,EAAE,OAAe;QACvE,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YACzB,eAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,YAAY,IAAI,KAAK,EAAE,CAAC,CAAA;QACrE,CAAC;aAAM,CAAC;YACJ,eAAM,CAAC,KAAK,CAAC,kBAAkB,KAAe,EAAE,CAAC,CAAA;YACjD,eAAM,CAAC,KAAK,CAAC,GAAG,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,YAAY,EAAE,CAAC,CAAA;QACvE,CAAC;QACD,kFAAkF;QAClF,uBAAuB;QACvB,QAAQ;QACR,sEAAsE;QACtE,0FAA0F;QAC1F,iFAAiF;QACjF,wCAAwC;QACxC,yBAAyB;QACzB,iCAAiC;QACjC,wEAAwE;QACxE,SAAS;QACT,eAAe;QACf,4BAA4B;QAC5B,+IAA+I;QAC/I,KAAK;IACT,CAAC;IAED,iBAAiB,CAAC,UAAkB;QAChC,yGAAyG;QACzG,8EAA8E;QAC9E,IAAI;QACJ,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,UAAU,CAAA;IAC/C,CAAC;IAED,KAAK,CAAC,WAAW,CACb,UAAwB,EACxB,UAAkB,EAClB,kBAA0B,EAC1B,wBAAwB,GAAG,KAAK;QAEhC,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;gBACjD,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAA;gBACzC,MAAM,OAAO,CAAC,cAAc,CAAC,YAAY,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;gBACvE,IAAI,cAAc,GAAG,EAAE,CAAA;gBACvB,IAAI,CAAC,wBAAwB,EAAE,CAAC;oBAC5B,cAAc,GAAG;wBACb,SAAS,EAAE,kBAAkB,EAAE,gDAAgD;wBAC/E,0BAA0B,EAAE,IAAI,EAAE,gEAAgE;wBAClG,cAAc,EAAE,QAAQ,EAAE,2CAA2C;qBACxE,CAAA;gBACL,CAAC;gBAED,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAA;gBACpD,eAAM,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC,CAAA;gBAC1B,MAAM,OAAO,CAAC,WAAW,CAAC,SAAS,EAAE;oBACjC,OAAO,EAAE,IAAI;oBACb,kBAAkB,EAAE,IAAI,CAAC,MAAM,CAAC,kBAAkB;oBAClD,+DAA+D;oBAC/D,SAAS,EAAE,cAAc;iBAC5B,CAAC,CAAA;gBAEF,MAAM,OAAO,CAAC,SAAS,CAAC,SAAS,EAAE,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,gBAAgB,GAAG,UAAU,CAAC,CAAA;gBAC3F,eAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,aAAa,EAAE,kBAAkB,SAAS,EAAE,CAAC,CAAA;YACpF,CAAC,CAAC,CAAA;QACN,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACtB,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,KAAK,EAAE,wBAAwB,CAAC,CAAA;QACpE,CAAC;IACL,CAAC;IAED,KAAK,CAAC,UAAU,CACZ,UAAwB,EACxB,UAAkB,EAClB,kBAA0B,EAC1B,IAAa,EACb,QAAQ,GAAG,CAAC;QAEZ,IAAI,CAAC;YACD,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;gBACxD,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,UAAU,EAAE,kBAAkB,EAAE,IAAI,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAA;gBAExG,eAAM,CAAC,IAAI,CAAC,wBAAwB,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,UAAU,EAAE,IAAI,CAAC,CAAA;gBAEjF,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAC3B,IAAI,CAAC,MAAM,CAAC,QAAQ,EACpB,IAAI,CAAC,MAAM,CAAC,gBAAgB,GAAG,UAAU,EACzC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,EACjC;oBACI,UAAU,EAAE,IAAI;oBAChB,QAAQ;oBACR,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;oBACrB,WAAW,EAAE,kBAAkB;iBAClC,CACJ,CAAA;gBACD,IAAI,OAAO,EAAE,CAAC;oBACV,eAAM,CAAC,IAAI,CAAC,mCAAmC,IAAI,CAAC,MAAM,CAAC,gBAAgB,GAAG,UAAU,EAAE,EAAE,IAAI,CAAC,CAAA;gBACrG,CAAC;gBACD,OAAO,OAAO,CAAA;YAClB,CAAC,CAAC,CAAA;QACN,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACtB,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,KAAK,EAAE,6BAA6B,CAAC,CAAA;YACpE,OAAO,KAAK,CAAA;QAChB,CAAC;IACL,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,UAAwB,EAAE,UAAkB;QAC1D,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;YAAE,OAAM;QAC9D,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;gBACjD,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,UAAU,CAAA;gBACtD,MAAM,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;gBACpC,eAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,aAAa,EAAE,kBAAkB,SAAS,EAAE,CAAC,CAAA;YACpF,CAAC,CAAC,CAAA;QACN,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACtB,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,KAAK,EAAE,wBAAwB,CAAC,CAAA;QACpE,CAAC;IACL,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,UAAwB,EAAE,UAAkB;QAC/D,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,UAAU,CAAA;QAEtD,IAAI,CAAC;YACD,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;gBACxD,IAAI,CAAC;oBACD,MAAM,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;oBACnC,OAAO,IAAI,CAAA;gBACf,CAAC;gBAAC,OAAO,KAAc,EAAE,CAAC;oBACtB,+CAA+C;oBAC/C,2CAA2C;oBAC3C,IAAI,MAAM,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC;wBACzC,eAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,kBAAkB,EAAE,yBAAyB,SAAS,EAAE,CAAC,CAAA;wBAC5F,OAAO,KAAK,CAAA;oBAChB,CAAC;oBACD,MAAM,KAAK,CAAA,CAAC,+BAA+B;gBAC/C,CAAC;YACL,CAAC,CAAC,CAAA;QACN,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACtB,IAAI,CAAC,WAAW,CAAC,kBAAkB,EAAE,KAAK,EAAE,iCAAiC,CAAC,CAAA;YAC9E,MAAM,KAAK,CAAA;QACf,CAAC;IACL,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,KAAc;QACrC,IAAI,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC;YAAE,OAAO,KAAK,CAAA;QAE3C,MAAM,SAAS,GAAG,KAAkC,CAAA;QACpD,OAAO,CACH,SAAS,CAAC,IAAI,KAAK,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,0BAA0B;SACtI,CAAA;IACL,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,UAAwB,EAAE,UAAkB;QAC3D,IAAI,CAAC;YACD,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;gBACxD,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,UAAU,CAAC,CAAA;gBAChF,OAAO,SAAS,CAAC,YAAY,KAAK,CAAC,CAAA;YACvC,CAAC,CAAC,CAAA;QACN,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACtB,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;gBAChE,eAAM,CAAC,IAAI,CACP,IAAI,CAAC,MAAM,CAAC,SAAS,EACrB,cAAc,EACd,yBAAyB,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,UAAU,EAAE,CAClE,CAAA;gBACD,OAAO,IAAI,CAAA;YACf,CAAC;YACD,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,KAAK,EAAE,mCAAmC,CAAC,CAAA;YAC5E,OAAO,KAAK,CAAA;QAChB,CAAC;IACL,CAAC;CACJ;AArLD,4CAqLC"}
|