@mbc-cqrs-serverless/task 0.1.45-beta.0 → 0.1.46-beta.0
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.
|
@@ -50,9 +50,12 @@ let TaskQueueEventHandler = TaskQueueEventHandler_1 = class TaskQueueEventHandle
|
|
|
50
50
|
catch (error) {
|
|
51
51
|
// update status failed
|
|
52
52
|
this.logger.error(error);
|
|
53
|
-
await
|
|
54
|
-
|
|
55
|
-
|
|
53
|
+
await Promise.all([
|
|
54
|
+
this.taskService.updateStatus(taskKey, status_enum_1.TaskStatusEnum.FAILED, {
|
|
55
|
+
error,
|
|
56
|
+
}),
|
|
57
|
+
this.taskService.publishAlarm(event, error.stack),
|
|
58
|
+
]);
|
|
56
59
|
throw error;
|
|
57
60
|
}
|
|
58
61
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task.queue.event.handler.js","sourceRoot":"","sources":["../../src/event/task.queue.event.handler.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"task.queue.event.handler.js","sourceRoot":"","sources":["../../src/event/task.queue.event.handler.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAIkC;AAClC,2CAA6D;AAC7D,uCAAwC;AAExC,sDAAqD;AACrD,sEAAoE;AACpE,kDAA6C;AAC7C,yDAAmD;AAI5C,IAAM,qBAAqB,6BAA3B,MAAM,qBAAqB;IAOhC,YACmB,SAAoB,EACpB,WAAwB,EAEzC,YAAqD;QAHpC,cAAS,GAAT,SAAS,CAAW;QACpB,gBAAW,GAAX,WAAW,CAAa;QAExB,iBAAY,GAAZ,YAAY,CAAwB;QARtC,WAAM,GAAG,IAAI,eAAM,CAAC,uBAAqB,CAAC,IAAI,CAAC,CAAA;IAS7D,CAAC;IAEJ,YAAY;QACV,MAAM,uBAAuB,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,KAAK,MAAM,CAAA;QAC5E,IAAI,uBAAuB,EAAE,CAAC;YAC5B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,eAAQ,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAA;QACjE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,KAAqB;QACjC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAA;QAExD,MAAM,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,OAAO,CAAA;QACvC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;QAExC,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,OAAO,EAAE,4BAAc,CAAC,UAAU,CAAC,CAAA;YACvE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;YAC3D,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9B,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CACpD,CAAA;YACD,0BAA0B;YAC1B,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,OAAO,EAAE,4BAAc,CAAC,SAAS,EAAE;gBACrE,MAAM;aACP,CAAC,CAAA;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,uBAAuB;YACvB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YACxB,MAAM,OAAO,CAAC,GAAG,CAAC;gBAChB,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,OAAO,EAAE,4BAAc,CAAC,MAAM,EAAE;oBAC5D,KAAK;iBACN,CAAC;gBACF,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,KAAK,EAAG,KAAe,CAAC,KAAK,CAAC;aAC7D,CAAC,CAAA;YACF,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;CACF,CAAA;AAjDY,sDAAqB;gCAArB,qBAAqB;IADjC,IAAA,mBAAY,EAAC,iCAAc,CAAC;IAWxB,WAAA,IAAA,eAAM,EAAC,iDAAwB,CAAC,CAAA;qCAFL,gBAAS;QACP,0BAAW;GAThC,qBAAqB,CAiDjC"}
|
package/dist/task.service.d.ts
CHANGED
|
@@ -1,13 +1,17 @@
|
|
|
1
1
|
import { DetailKey, DynamoDbService, IInvoke, SnsService } from '@mbc-cqrs-serverless/core';
|
|
2
|
+
import { ConfigService } from '@nestjs/config';
|
|
2
3
|
import { CreateTaskDto } from './dto/create-task.dto';
|
|
3
4
|
import { TaskEntity } from './entity/task.entity';
|
|
4
5
|
import { TaskListEntity } from './entity/task-list.entity';
|
|
6
|
+
import { TaskQueueEvent } from './event';
|
|
5
7
|
export declare class TaskService {
|
|
6
8
|
private readonly dynamoDbService;
|
|
7
9
|
private readonly snsService;
|
|
10
|
+
private readonly config;
|
|
8
11
|
private readonly logger;
|
|
9
12
|
private readonly tableName;
|
|
10
|
-
|
|
13
|
+
private readonly alarmTopicArn;
|
|
14
|
+
constructor(dynamoDbService: DynamoDbService, snsService: SnsService, config: ConfigService);
|
|
11
15
|
createTask(dto: CreateTaskDto, opts: {
|
|
12
16
|
invokeContext: IInvoke;
|
|
13
17
|
}): Promise<TaskEntity>;
|
|
@@ -26,4 +30,5 @@ export declare class TaskService {
|
|
|
26
30
|
limit?: number;
|
|
27
31
|
order?: 'asc' | 'desc';
|
|
28
32
|
}): Promise<TaskListEntity>;
|
|
33
|
+
publishAlarm(event: TaskQueueEvent, errorDetails: any): Promise<void>;
|
|
29
34
|
}
|
package/dist/task.service.js
CHANGED
|
@@ -13,16 +13,19 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
13
13
|
exports.TaskService = void 0;
|
|
14
14
|
const core_1 = require("@mbc-cqrs-serverless/core");
|
|
15
15
|
const common_1 = require("@nestjs/common");
|
|
16
|
+
const config_1 = require("@nestjs/config");
|
|
16
17
|
const ulid_1 = require("ulid");
|
|
17
18
|
const task_entity_1 = require("./entity/task.entity");
|
|
18
19
|
const task_list_entity_1 = require("./entity/task-list.entity");
|
|
19
20
|
const status_enum_1 = require("./enums/status.enum");
|
|
20
21
|
let TaskService = TaskService_1 = class TaskService {
|
|
21
|
-
constructor(dynamoDbService, snsService) {
|
|
22
|
+
constructor(dynamoDbService, snsService, config) {
|
|
22
23
|
this.dynamoDbService = dynamoDbService;
|
|
23
24
|
this.snsService = snsService;
|
|
25
|
+
this.config = config;
|
|
24
26
|
this.logger = new common_1.Logger(TaskService_1.name);
|
|
25
27
|
this.tableName = dynamoDbService.getTableName('tasks');
|
|
28
|
+
this.alarmTopicArn = this.config.get('SNS_ALARM_TOPIC_ARN');
|
|
26
29
|
}
|
|
27
30
|
async createTask(dto, opts) {
|
|
28
31
|
const sourceIp = opts.invokeContext?.event?.requestContext?.http?.sourceIp;
|
|
@@ -78,11 +81,29 @@ let TaskService = TaskService_1 = class TaskService {
|
|
|
78
81
|
items: items.map((item) => new task_entity_1.TaskEntity(item)),
|
|
79
82
|
});
|
|
80
83
|
}
|
|
84
|
+
async publishAlarm(event, errorDetails) {
|
|
85
|
+
this.logger.debug('event', event);
|
|
86
|
+
const taskKey = event.taskEvent.taskKey;
|
|
87
|
+
const alarm = {
|
|
88
|
+
action: 'sfn-alarm',
|
|
89
|
+
id: `${taskKey.pk}#${taskKey.sk}`,
|
|
90
|
+
table: this.tableName,
|
|
91
|
+
pk: taskKey.pk,
|
|
92
|
+
sk: taskKey.sk,
|
|
93
|
+
tenantCode: taskKey.pk.substring(taskKey.pk.indexOf('#') + 1),
|
|
94
|
+
content: {
|
|
95
|
+
errorMessage: errorDetails,
|
|
96
|
+
},
|
|
97
|
+
};
|
|
98
|
+
this.logger.error('alarm:::', alarm);
|
|
99
|
+
await this.snsService.publish(alarm, this.alarmTopicArn);
|
|
100
|
+
}
|
|
81
101
|
};
|
|
82
102
|
exports.TaskService = TaskService;
|
|
83
103
|
exports.TaskService = TaskService = TaskService_1 = __decorate([
|
|
84
104
|
(0, common_1.Injectable)(),
|
|
85
105
|
__metadata("design:paramtypes", [core_1.DynamoDbService,
|
|
86
|
-
core_1.SnsService
|
|
106
|
+
core_1.SnsService,
|
|
107
|
+
config_1.ConfigService])
|
|
87
108
|
], TaskService);
|
|
88
109
|
//# sourceMappingURL=task.service.js.map
|
package/dist/task.service.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task.service.js","sourceRoot":"","sources":["../src/task.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,oDAQkC;AAClC,2CAAmD;AACnD,+BAA2B;AAG3B,sDAAiD;AACjD,gEAA0D;AAC1D,qDAAoD;
|
|
1
|
+
{"version":3,"file":"task.service.js","sourceRoot":"","sources":["../src/task.service.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mbc-cqrs-serverless/task",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.46-beta.0",
|
|
4
4
|
"description": "long-running task",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"mbc",
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"access": "public"
|
|
42
42
|
},
|
|
43
43
|
"dependencies": {
|
|
44
|
-
"@mbc-cqrs-serverless/core": "^0.1.
|
|
44
|
+
"@mbc-cqrs-serverless/core": "^0.1.46-beta.0"
|
|
45
45
|
},
|
|
46
|
-
"gitHead": "
|
|
46
|
+
"gitHead": "d26aec8cdbfe866052eb2724e1c5b723802d508b"
|
|
47
47
|
}
|