phx-node 1.0.32 → 1.0.34

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.
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
+ import { runWithSentryCheckIn } from "src/sentry-config/sentry-monitor";
1
2
  import { PHXGraphqlV2Service } from "src/graphql/graphql-v2.service";
2
- import { PHXSentryMonitorService } from "./module/sentry/sentry.service";
3
3
  import { PHXCloneCronjob } from "./module/cronjob-manager/clone-cronjob.service";
4
4
  import { PHXCronjobManagerService } from "./module/cronjob-manager/cronjob-manager.service";
5
5
  import { PHXDevToolDataService } from "./module/dev-tool-data/dev-tool-data.service";
@@ -21,4 +21,4 @@ import { GetListActiveSchoolYearAndNextYearServiceV3 } from "./module/school-yea
21
21
  import { GetListActiveSchoolYearServiceV3 } from "./module/school-year-v3/listActiveShoolYearV3.service";
22
22
  import { GetListNextSchoolYearServiceV3 } from "./module/school-year-v3/listNextSchoolYearV3.service";
23
23
  import { GetSchoolYearServiceV3 } from "./module/school-year-v3/schoolYearV3.service";
24
- export { PHXNestModule, GetSchoolYearService, GetListActiveSchoolYearService, GetActiveSchoolYearAndNextYearService, GetListActiveSchoolYearAndNextYearService, GetListNextSchoolYearService, PHXGraphqlService, PHXGraphqlV2Service, ApiService, PHXStudentInfoService, PHXDateHelpers, PHXGrpcClientService, PHXGrpcClientSystemService, PHXStudentInfoServiceV3, GetActiveSchoolYearAndNextYearServiceV3, GetListActiveSchoolYearAndNextYearServiceV3, GetListActiveSchoolYearServiceV3, GetListNextSchoolYearServiceV3, GetSchoolYearServiceV3, PHXDevToolDataService, PHXCronjobManagerService, PHXCloneCronjob, PHXSentryMonitorService, };
24
+ export { PHXNestModule, GetSchoolYearService, GetListActiveSchoolYearService, GetActiveSchoolYearAndNextYearService, GetListActiveSchoolYearAndNextYearService, GetListNextSchoolYearService, PHXGraphqlService, PHXGraphqlV2Service, ApiService, PHXStudentInfoService, PHXDateHelpers, PHXGrpcClientService, PHXGrpcClientSystemService, PHXStudentInfoServiceV3, GetActiveSchoolYearAndNextYearServiceV3, GetListActiveSchoolYearAndNextYearServiceV3, GetListActiveSchoolYearServiceV3, GetListNextSchoolYearServiceV3, GetSchoolYearServiceV3, PHXDevToolDataService, PHXCronjobManagerService, PHXCloneCronjob, runWithSentryCheckIn, };
package/dist/index.js CHANGED
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PHXSentryMonitorService = exports.PHXCloneCronjob = exports.PHXCronjobManagerService = exports.PHXDevToolDataService = exports.GetSchoolYearServiceV3 = exports.GetListNextSchoolYearServiceV3 = exports.GetListActiveSchoolYearServiceV3 = exports.GetListActiveSchoolYearAndNextYearServiceV3 = exports.GetActiveSchoolYearAndNextYearServiceV3 = exports.PHXStudentInfoServiceV3 = exports.PHXGrpcClientSystemService = exports.PHXGrpcClientService = exports.PHXDateHelpers = exports.PHXStudentInfoService = exports.ApiService = exports.PHXGraphqlV2Service = exports.PHXGraphqlService = exports.GetListNextSchoolYearService = exports.GetListActiveSchoolYearAndNextYearService = exports.GetActiveSchoolYearAndNextYearService = exports.GetListActiveSchoolYearService = exports.GetSchoolYearService = exports.PHXNestModule = void 0;
3
+ exports.runWithSentryCheckIn = exports.PHXCloneCronjob = exports.PHXCronjobManagerService = exports.PHXDevToolDataService = exports.GetSchoolYearServiceV3 = exports.GetListNextSchoolYearServiceV3 = exports.GetListActiveSchoolYearServiceV3 = exports.GetListActiveSchoolYearAndNextYearServiceV3 = exports.GetActiveSchoolYearAndNextYearServiceV3 = exports.PHXStudentInfoServiceV3 = exports.PHXGrpcClientSystemService = exports.PHXGrpcClientService = exports.PHXDateHelpers = exports.PHXStudentInfoService = exports.ApiService = exports.PHXGraphqlV2Service = exports.PHXGraphqlService = exports.GetListNextSchoolYearService = exports.GetListActiveSchoolYearAndNextYearService = exports.GetActiveSchoolYearAndNextYearService = exports.GetListActiveSchoolYearService = exports.GetSchoolYearService = exports.PHXNestModule = void 0;
4
+ const sentry_monitor_1 = require("./sentry-config/sentry-monitor");
5
+ Object.defineProperty(exports, "runWithSentryCheckIn", { enumerable: true, get: function () { return sentry_monitor_1.runWithSentryCheckIn; } });
4
6
  const graphql_v2_service_1 = require("./graphql/graphql-v2.service");
5
7
  Object.defineProperty(exports, "PHXGraphqlV2Service", { enumerable: true, get: function () { return graphql_v2_service_1.PHXGraphqlV2Service; } });
6
- const sentry_service_1 = require("./module/sentry/sentry.service");
7
- Object.defineProperty(exports, "PHXSentryMonitorService", { enumerable: true, get: function () { return sentry_service_1.PHXSentryMonitorService; } });
8
8
  const clone_cronjob_service_1 = require("./module/cronjob-manager/clone-cronjob.service");
9
9
  Object.defineProperty(exports, "PHXCloneCronjob", { enumerable: true, get: function () { return clone_cronjob_service_1.PHXCloneCronjob; } });
10
10
  const cronjob_manager_service_1 = require("./module/cronjob-manager/cronjob-manager.service");
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,qEAAqE;AAgCnE,oGAhCO,wCAAmB,OAgCP;AA/BrB,mEAAyE;AA8CvE,wGA9CO,wCAAuB,OA8CP;AA7CzB,0FAAiF;AA4C/E,gGA5CO,uCAAe,OA4CP;AA3CjB,8FAA4F;AA0C1F,yGA1CO,kDAAwB,OA0CP;AAzC1B,wFAAqF;AAwCnF,sGAxCO,6CAAqB,OAwCP;AAvCvB,gGAA6F;AAgC3F,2GAhCO,uDAA0B,OAgCP;AA/B5B,8EAA0E;AA6BxE,+FA7BO,gCAAc,OA6BP;AA5BhB,qFAAmF;AA2BjF,sGA3BO,4CAAqB,OA2BP;AA1BvB,0DAAsD;AAyBpD,2FAzBO,wBAAU,OAyBP;AAxBZ,6CAA6C;AAgB3C,8FAhBO,0BAAa,OAgBP;AAff,+DAA8D;AAqB5D,kGArBO,mCAAiB,OAqBP;AApBnB,gGAA+F;AAmB7F,6GAnBO,yDAA4B,OAmBP;AAlB9B,gFAA+E;AAc7E,qGAdO,yCAAoB,OAcP;AAbtB,kGAAkG;AAchG,+GAdO,4DAA8B,OAcP;AAbhC,kHAAiH;AAc/G,sHAdO,2EAAqC,OAcP;AAbvC,0HAAyH;AAcvH,0HAdO,mFAAyC,OAcP;AAb3C,kFAAgF;AAoB9E,qGApBO,0CAAoB,OAoBP;AAnBtB,2FAAwF;AAqBtF,wGArBO,iDAAuB,OAqBP;AApBzB,yHAAwH;AAqBtH,wHArBO,+EAAuC,OAqBP;AApBzC,iIAAgI;AAqB9H,4HArBO,uFAA2C,OAqBP;AApB7C,yGAAyG;AAqBvG,iHArBO,gEAAgC,OAqBP;AApBlC,uGAAsG;AAqBpG,+GArBO,6DAA8B,OAqBP;AApBhC,uFAAsF;AAqBpF,uGArBO,6CAAsB,OAqBP"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,mEAAwE;AA+CtE,qGA/CO,qCAAoB,OA+CP;AA9CtB,qEAAqE;AA+BnE,oGA/BO,wCAAmB,OA+BP;AA9BrB,0FAAiF;AA4C/E,gGA5CO,uCAAe,OA4CP;AA3CjB,8FAA4F;AA0C1F,yGA1CO,kDAAwB,OA0CP;AAzC1B,wFAAqF;AAwCnF,sGAxCO,6CAAqB,OAwCP;AAvCvB,gGAA6F;AAgC3F,2GAhCO,uDAA0B,OAgCP;AA/B5B,8EAA0E;AA6BxE,+FA7BO,gCAAc,OA6BP;AA5BhB,qFAAmF;AA2BjF,sGA3BO,4CAAqB,OA2BP;AA1BvB,0DAAsD;AAyBpD,2FAzBO,wBAAU,OAyBP;AAxBZ,6CAA6C;AAgB3C,8FAhBO,0BAAa,OAgBP;AAff,+DAA8D;AAqB5D,kGArBO,mCAAiB,OAqBP;AApBnB,gGAA+F;AAmB7F,6GAnBO,yDAA4B,OAmBP;AAlB9B,gFAA+E;AAc7E,qGAdO,yCAAoB,OAcP;AAbtB,kGAAkG;AAchG,+GAdO,4DAA8B,OAcP;AAbhC,kHAAiH;AAc/G,sHAdO,2EAAqC,OAcP;AAbvC,0HAAyH;AAcvH,0HAdO,mFAAyC,OAcP;AAb3C,kFAAgF;AAoB9E,qGApBO,0CAAoB,OAoBP;AAnBtB,2FAAwF;AAqBtF,wGArBO,iDAAuB,OAqBP;AApBzB,yHAAwH;AAqBtH,wHArBO,+EAAuC,OAqBP;AApBzC,iIAAgI;AAqB9H,4HArBO,uFAA2C,OAqBP;AApB7C,yGAAyG;AAqBvG,iHArBO,gEAAgC,OAqBP;AApBlC,uGAAsG;AAqBpG,+GArBO,6DAA8B,OAqBP;AApBhC,uFAAsF;AAqBpF,uGArBO,6CAAsB,OAqBP"}
@@ -1,9 +1,9 @@
1
1
  import { SchedulerRegistry } from "@nestjs/schedule";
2
- import { PHXSentryMonitorService } from "../sentry/sentry.service";
3
2
  import { CreateCronjobSettings } from "src/lib/types/cronjob-manager";
4
3
  export declare class PHXCloneCronjob {
5
4
  private readonly schedulerRegistry;
6
- private readonly sentryService;
7
- constructor(schedulerRegistry: SchedulerRegistry, sentryService: PHXSentryMonitorService);
8
- init(cronjobSettings: CreateCronjobSettings): void;
5
+ private readonly logger;
6
+ constructor(schedulerRegistry: SchedulerRegistry);
7
+ init(cronjobSettings: CreateCronjobSettings): Promise<void>;
8
+ private checkInSentry;
9
9
  }
@@ -8,31 +8,56 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
12
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
13
+ return new (P || (P = Promise))(function (resolve, reject) {
14
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
15
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
16
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
17
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
18
+ });
19
+ };
20
+ var PHXCloneCronjob_1;
11
21
  Object.defineProperty(exports, "__esModule", { value: true });
12
22
  exports.PHXCloneCronjob = void 0;
13
23
  const common_1 = require("@nestjs/common");
14
24
  const schedule_1 = require("@nestjs/schedule");
15
25
  const cron_1 = require("cron");
16
- const sentry_service_1 = require("../sentry/sentry.service");
17
- let PHXCloneCronjob = class PHXCloneCronjob {
18
- constructor(schedulerRegistry, sentryService) {
26
+ const sentry_monitor_1 = require("../../sentry-config/sentry-monitor");
27
+ let PHXCloneCronjob = PHXCloneCronjob_1 = class PHXCloneCronjob {
28
+ constructor(schedulerRegistry) {
19
29
  this.schedulerRegistry = schedulerRegistry;
20
- this.sentryService = sentryService;
30
+ this.logger = new common_1.Logger(PHXCloneCronjob_1.name);
21
31
  }
22
32
  init(cronjobSettings) {
23
- const { cronTime, cronName, schoolCode, hostName, taskService, monitorConfig, } = cronjobSettings;
24
- const job = new cron_1.CronJob(`${cronTime}`, () => {
25
- const monitorSlug = `${schoolCode.toLowerCase()}-${cronName}`;
26
- this.sentryService.checkInSentry(cronTime, taskService, monitorConfig, monitorSlug, hostName);
33
+ return __awaiter(this, void 0, void 0, function* () {
34
+ const { cronTime, cronName, schoolCode, hostName, taskService, monitorConfig, } = cronjobSettings;
35
+ const job = new cron_1.CronJob(`${cronTime}`, () => {
36
+ const monitorSlug = `${schoolCode.toLowerCase()}-${cronName}`;
37
+ this.checkInSentry(cronTime, taskService, monitorConfig, monitorSlug, hostName, this.logger);
38
+ });
39
+ this.schedulerRegistry.addCronJob(`${schoolCode}_${cronName}`, job);
40
+ job.start();
41
+ });
42
+ }
43
+ checkInSentry(cronTime, taskService, monitorConfig, monitorSlug, hostName, logger) {
44
+ return __awaiter(this, void 0, void 0, function* () {
45
+ try {
46
+ const cronTask = () => __awaiter(this, void 0, void 0, function* () {
47
+ logger.log(`[${monitorSlug}] cron job is running...`);
48
+ yield taskService.init(hostName);
49
+ });
50
+ yield (0, sentry_monitor_1.runWithSentryCheckIn)(monitorSlug, cronTime, cronTask, monitorConfig);
51
+ }
52
+ catch (err) {
53
+ logger.error(err);
54
+ }
27
55
  });
28
- this.schedulerRegistry.addCronJob(`${schoolCode}_${cronName}`, job);
29
- job.start();
30
56
  }
31
57
  };
32
58
  exports.PHXCloneCronjob = PHXCloneCronjob;
33
- exports.PHXCloneCronjob = PHXCloneCronjob = __decorate([
59
+ exports.PHXCloneCronjob = PHXCloneCronjob = PHXCloneCronjob_1 = __decorate([
34
60
  (0, common_1.Injectable)(),
35
- __metadata("design:paramtypes", [schedule_1.SchedulerRegistry,
36
- sentry_service_1.PHXSentryMonitorService])
61
+ __metadata("design:paramtypes", [schedule_1.SchedulerRegistry])
37
62
  ], PHXCloneCronjob);
38
63
  //# sourceMappingURL=clone-cronjob.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"clone-cronjob.service.js","sourceRoot":"","sources":["../../../src/module/cronjob-manager/clone-cronjob.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,+CAAqD;AACrD,+BAA+B;AAC/B,6DAAmE;AAG5D,IAAM,eAAe,GAArB,MAAM,eAAe;IAC1B,YACmB,iBAAoC,EACpC,aAAsC;QADtC,sBAAiB,GAAjB,iBAAiB,CAAmB;QACpC,kBAAa,GAAb,aAAa,CAAyB;IACtD,CAAC;IAaJ,IAAI,CAAC,eAAsC;QACzC,MAAM,EACJ,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,WAAW,EACX,aAAa,GACd,GAAG,eAAe,CAAC;QAEpB,MAAM,GAAG,GAAG,IAAI,cAAO,CAAC,GAAG,QAAQ,EAAE,EAAE,GAAG,EAAE;YAC1C,MAAM,WAAW,GAAW,GAAG,UAAU,CAAC,WAAW,EAAE,IAAI,QAAQ,EAAE,CAAC;YAGtE,IAAI,CAAC,aAAa,CAAC,aAAa,CAC9B,QAAQ,EACR,WAAW,EACX,aAAa,EACb,WAAW,EACX,QAAQ,CACT,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,GAAG,UAAU,IAAI,QAAQ,EAAE,EAAE,GAAG,CAAC,CAAC;QACpE,GAAG,CAAC,KAAK,EAAE,CAAC;IACd,CAAC;CACF,CAAA;AA3CY,0CAAe;0BAAf,eAAe;IAD3B,IAAA,mBAAU,GAAE;qCAG2B,4BAAiB;QACrB,wCAAuB;GAH9C,eAAe,CA2C3B"}
1
+ {"version":3,"file":"clone-cronjob.service.js","sourceRoot":"","sources":["../../../src/module/cronjob-manager/clone-cronjob.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,2CAAoD;AACpD,+CAAqD;AACrD,+BAA+B;AAG/B,uEAAwE;AAEjE,IAAM,eAAe,uBAArB,MAAM,eAAe;IAE1B,YAA6B,iBAAoC;QAApC,sBAAiB,GAAjB,iBAAiB,CAAmB;QADhD,WAAM,GAAG,IAAI,eAAM,CAAC,iBAAe,CAAC,IAAI,CAAC,CAAC;IACS,CAAC;IAa/D,IAAI,CAAC,eAAsC;;YAC/C,MAAM,EACJ,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,WAAW,EACX,aAAa,GACd,GAAG,eAAe,CAAC;YAEpB,MAAM,GAAG,GAAG,IAAI,cAAO,CAAC,GAAG,QAAQ,EAAE,EAAE,GAAG,EAAE;gBAC1C,MAAM,WAAW,GAAW,GAAG,UAAU,CAAC,WAAW,EAAE,IAAI,QAAQ,EAAE,CAAC;gBAGtE,IAAI,CAAC,aAAa,CAChB,QAAQ,EACR,WAAW,EACX,aAAa,EACb,WAAW,EACX,QAAQ,EACR,IAAI,CAAC,MAAM,CACZ,CAAC;YACJ,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,GAAG,UAAU,IAAI,QAAQ,EAAE,EAAE,GAAG,CAAC,CAAC;YACpE,GAAG,CAAC,KAAK,EAAE,CAAC;QACd,CAAC;KAAA;IAEa,aAAa,CACzB,QAAgB,EAChB,WAAgB,EAChB,aAAkC,EAClC,WAAmB,EACnB,QAAgB,EAChB,MAAW;;YAEX,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,GAAS,EAAE;oBAC1B,MAAM,CAAC,GAAG,CAAC,IAAI,WAAW,0BAA0B,CAAC,CAAC;oBACtD,MAAM,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACnC,CAAC,CAAA,CAAC;gBAEF,MAAM,IAAA,qCAAoB,EACxB,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,aAAa,CACd,CAAC;YACJ,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACpB,CAAC;QACH,CAAC;KAAA;CACF,CAAA;AAnEY,0CAAe;0BAAf,eAAe;IAD3B,IAAA,mBAAU,GAAE;qCAGqC,4BAAiB;GAFtD,eAAe,CAmE3B"}
@@ -5,5 +5,5 @@ export declare class PHXCronjobManagerService {
5
5
  private readonly cloneCronjob;
6
6
  private readonly devToolDataService;
7
7
  constructor(cloneCronjob: PHXCloneCronjob, devToolDataService: PHXDevToolDataService);
8
- startCronJobsForAllSchools(listService: Array<ServiceItem>): Promise<void>;
8
+ init(listService: Array<ServiceItem>): Promise<void>;
9
9
  }
@@ -27,7 +27,7 @@ let PHXCronjobManagerService = class PHXCronjobManagerService {
27
27
  this.cloneCronjob = cloneCronjob;
28
28
  this.devToolDataService = devToolDataService;
29
29
  }
30
- startCronJobsForAllSchools(listService) {
30
+ init(listService) {
31
31
  return __awaiter(this, void 0, void 0, function* () {
32
32
  const listHostName = yield this.devToolDataService.getListHostName();
33
33
  const hostNameLength = listHostName.length;
@@ -1 +1 @@
1
- {"version":3,"file":"cronjob-manager.service.js","sourceRoot":"","sources":["../../../src/module/cronjob-manager/cronjob-manager.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,2CAA4C;AAC5C,mEAA0D;AAC1D,kFAA+E;AAIxE,IAAM,wBAAwB,GAA9B,MAAM,wBAAwB;IACnC,YACmB,YAA6B,EAC7B,kBAAyC;QADzC,iBAAY,GAAZ,YAAY,CAAiB;QAC7B,uBAAkB,GAAlB,kBAAkB,CAAuB;IACzD,CAAC;IAEE,0BAA0B,CAAC,WAA+B;;YAC9D,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,eAAe,EAAE,CAAC;YACrE,MAAM,cAAc,GAAG,YAAY,CAAC,MAAM,CAAC;YAC3C,IAAI,cAAc,KAAK,CAAC;gBAAE,OAAO;YAGjC,KAAK,MAAM,YAAY,IAAI,YAAY,EAAE,CAAC;gBACxC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,YAAY,CAAC;gBAE/C,WAAW,CAAC,OAAO,CACjB,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAE,EAAE,EAAE;oBACrD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;wBACrB,QAAQ;wBACR,UAAU,EAAE,WAAW;wBACvB,QAAQ,EAAE,QAAQ;wBAClB,QAAQ;wBACR,WAAW;wBACX,aAAa;qBACd,CAAC,CAAC;gBACL,CAAC,CACF,CAAC;YACJ,CAAC;QACH,CAAC;KAAA;CACF,CAAA;AA7BY,4DAAwB;mCAAxB,wBAAwB;IADpC,IAAA,mBAAU,GAAE;qCAGsB,uCAAe;QACT,6CAAqB;GAHjD,wBAAwB,CA6BpC"}
1
+ {"version":3,"file":"cronjob-manager.service.js","sourceRoot":"","sources":["../../../src/module/cronjob-manager/cronjob-manager.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,2CAA4C;AAC5C,mEAA0D;AAC1D,kFAA+E;AAIxE,IAAM,wBAAwB,GAA9B,MAAM,wBAAwB;IACnC,YACmB,YAA6B,EAC7B,kBAAyC;QADzC,iBAAY,GAAZ,YAAY,CAAiB;QAC7B,uBAAkB,GAAlB,kBAAkB,CAAuB;IACzD,CAAC;IAEE,IAAI,CAAC,WAA+B;;YACxC,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,eAAe,EAAE,CAAC;YACrE,MAAM,cAAc,GAAG,YAAY,CAAC,MAAM,CAAC;YAC3C,IAAI,cAAc,KAAK,CAAC;gBAAE,OAAO;YAGjC,KAAK,MAAM,YAAY,IAAI,YAAY,EAAE,CAAC;gBACxC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,YAAY,CAAC;gBAE/C,WAAW,CAAC,OAAO,CACjB,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAE,EAAE,EAAE;oBACrD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;wBACrB,QAAQ;wBACR,UAAU,EAAE,WAAW;wBACvB,QAAQ,EAAE,QAAQ;wBAClB,QAAQ;wBACR,WAAW;wBACX,aAAa;qBACd,CAAC,CAAC;gBACL,CAAC,CACF,CAAC;YACJ,CAAC;QACH,CAAC;KAAA;CACF,CAAA;AA7BY,4DAAwB;mCAAxB,wBAAwB;IADpC,IAAA,mBAAU,GAAE;qCAGsB,uCAAe;QACT,6CAAqB;GAHjD,wBAAwB,CA6BpC"}
@@ -19,12 +19,11 @@ import { PHXGrpcClientSystemService } from "./module/grpc-client/grpc-client-sys
19
19
  import { PHXDevToolDataService } from "./module/dev-tool-data/dev-tool-data.service";
20
20
  import { PHXCronjobManagerService } from "./module/cronjob-manager/cronjob-manager.service";
21
21
  import { PHXCloneCronjob } from "./module/cronjob-manager/clone-cronjob.service";
22
- import { PHXSentryMonitorService } from "./module/sentry/sentry.service";
23
22
  import { PHXGraphqlV2Service } from "./graphql/graphql-v2.service";
24
23
  export declare class PHXNestModule {
25
24
  static register(): {
26
25
  module: typeof PHXNestModule;
27
- providers: (typeof PHXGraphqlV2Service | typeof PHXSentryMonitorService | typeof PHXCloneCronjob | typeof PHXDevToolDataService | typeof PHXCronjobManagerService | typeof PHXGrpcClientSystemService | typeof PHXDateHelpers | typeof PHXGraphqlService | typeof PHXStudentInfoService | typeof GetSchoolYearService | typeof GetListActiveSchoolYearService | typeof GetActiveSchoolYearAndNextYearService | typeof GetListActiveSchoolYearAndNextYearService | typeof GetListNextSchoolYearService | typeof PHXGrpcClientService | typeof PHXStudentInfoServiceV3 | typeof GetActiveSchoolYearAndNextYearServiceV3 | typeof GetListActiveSchoolYearAndNextYearServiceV3 | typeof GetListActiveSchoolYearServiceV3 | typeof GetListNextSchoolYearServiceV3 | typeof GetSchoolYearServiceV3)[];
26
+ providers: (typeof PHXGraphqlV2Service | typeof PHXCloneCronjob | typeof PHXDevToolDataService | typeof PHXCronjobManagerService | typeof PHXGrpcClientSystemService | typeof PHXDateHelpers | typeof PHXGraphqlService | typeof PHXStudentInfoService | typeof GetSchoolYearService | typeof GetListActiveSchoolYearService | typeof GetActiveSchoolYearAndNextYearService | typeof GetListActiveSchoolYearAndNextYearService | typeof GetListNextSchoolYearService | typeof PHXGrpcClientService | typeof PHXStudentInfoServiceV3 | typeof GetActiveSchoolYearAndNextYearServiceV3 | typeof GetListActiveSchoolYearAndNextYearServiceV3 | typeof GetListActiveSchoolYearServiceV3 | typeof GetListNextSchoolYearServiceV3 | typeof GetSchoolYearServiceV3)[];
28
27
  };
29
28
  static forRoot(graphQlConfig?: GraphQlEnv): DynamicModule;
30
29
  static forRootV2(graphQlConfig?: GraphQlV2Env): DynamicModule;
@@ -31,9 +31,8 @@ const grpc_client_system_service_1 = require("./module/grpc-client/grpc-client-s
31
31
  const dev_tool_data_service_1 = require("./module/dev-tool-data/dev-tool-data.service");
32
32
  const cronjob_manager_service_1 = require("./module/cronjob-manager/cronjob-manager.service");
33
33
  const clone_cronjob_service_1 = require("./module/cronjob-manager/clone-cronjob.service");
34
- const sentry_service_1 = require("./module/sentry/sentry.service");
35
34
  const graphql_v2_service_1 = require("./graphql/graphql-v2.service");
36
- const schedule_1 = require("@nestjs/schedule");
35
+ const setup_1 = require("@sentry/nestjs/setup");
37
36
  let PHXNestModule = PHXNestModule_1 = class PHXNestModule {
38
37
  static register() {
39
38
  return {
@@ -59,7 +58,6 @@ let PHXNestModule = PHXNestModule_1 = class PHXNestModule {
59
58
  dev_tool_data_service_1.PHXDevToolDataService,
60
59
  cronjob_manager_service_1.PHXCronjobManagerService,
61
60
  clone_cronjob_service_1.PHXCloneCronjob,
62
- sentry_service_1.PHXSentryMonitorService,
63
61
  ],
64
62
  };
65
63
  }
@@ -106,7 +104,7 @@ exports.PHXNestModule = PHXNestModule;
106
104
  exports.PHXNestModule = PHXNestModule = PHXNestModule_1 = __decorate([
107
105
  (0, common_1.Global)(),
108
106
  (0, common_1.Module)({
109
- imports: [api_module_1.ApiModule, axios_1.HttpModule, schedule_1.ScheduleModule.forRoot()],
107
+ imports: [api_module_1.ApiModule, axios_1.HttpModule, setup_1.SentryModule.forRoot()],
110
108
  controllers: [],
111
109
  providers: [
112
110
  graphql_service_1.PHXGraphqlService,
@@ -129,7 +127,6 @@ exports.PHXNestModule = PHXNestModule = PHXNestModule_1 = __decorate([
129
127
  dev_tool_data_service_1.PHXDevToolDataService,
130
128
  cronjob_manager_service_1.PHXCronjobManagerService,
131
129
  clone_cronjob_service_1.PHXCloneCronjob,
132
- sentry_service_1.PHXSentryMonitorService,
133
130
  ],
134
131
  exports: [
135
132
  graphql_service_1.PHXGraphqlService,
@@ -152,7 +149,6 @@ exports.PHXNestModule = PHXNestModule = PHXNestModule_1 = __decorate([
152
149
  dev_tool_data_service_1.PHXDevToolDataService,
153
150
  cronjob_manager_service_1.PHXCronjobManagerService,
154
151
  clone_cronjob_service_1.PHXCloneCronjob,
155
- sentry_service_1.PHXSentryMonitorService,
156
152
  ],
157
153
  })
158
154
  ], PHXNestModule);
@@ -1 +1 @@
1
- {"version":3,"file":"phx.module.js","sourceRoot":"","sources":["../src/phx.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAA+D;AAC/D,gFAA+E;AAC/E,+DAA8D;AAC9D,kGAAkG;AAClG,kHAAiH;AACjH,0HAAyH;AACzH,gGAA+F;AAE/F,6CAA6D;AAC7D,wDAAoD;AACpD,qFAAmF;AACnF,8EAA0E;AAC1E,kFAAgF;AAChF,yCAA2C;AAC3C,2FAAwF;AACxF,yHAAwH;AACxH,iIAAgI;AAChI,yGAAyG;AACzG,uGAAsG;AACtG,uFAAsF;AACtF,gGAA6F;AAC7F,wFAAqF;AACrF,8FAA4F;AAC5F,0FAAiF;AACjF,mEAAyE;AACzE,qEAAmE;AACnE,+CAAkD;AAqD3C,IAAM,aAAa,qBAAnB,MAAM,aAAa;IACxB,MAAM,CAAC,QAAQ;QACb,OAAO;YACL,MAAM,EAAE,eAAa;YACrB,SAAS,EAAE;gBACT,mCAAiB;gBACjB,wCAAmB;gBACnB,0CAAoB;gBACpB,uDAA0B;gBAC1B,yCAAoB;gBACpB,4DAA8B;gBAC9B,2EAAqC;gBACrC,mFAAyC;gBACzC,yDAA4B;gBAC5B,4CAAqB;gBACrB,gCAAc;gBACd,iDAAuB;gBACvB,+EAAuC;gBACvC,uFAA2C;gBAC3C,gEAAgC;gBAChC,6DAA8B;gBAC9B,6CAAsB;gBACtB,6CAAqB;gBACrB,kDAAwB;gBACxB,uCAAe;gBACf,wCAAuB;aACxB;SACF,CAAC;IACJ,CAAC;IAGD,MAAM,CAAC,OAAO,CAAC,aAA0B;QACvC,IAAI,SAAS,GAAG,EAAE,CAAC;QACnB,IAAI,OAAO,GAAG,EAAE,CAAC;QACjB,IAAI,aAAa,EAAE,CAAC;YAClB,SAAS,GAAG;gBACV,mCAAiB;gBACjB;oBACE,OAAO,EAAE,sBAAW;oBACpB,QAAQ,EAAE,aAAa;iBACxB;aACF,CAAC;YACF,OAAO,GAAG,CAAC,sBAAW,CAAC,CAAC;QAC1B,CAAC;QAED,OAAO;YACL,MAAM,EAAE,eAAa;YACrB,SAAS;YACT,OAAO;SACR,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,SAAS,CAAC,aAA4B;QAC3C,IAAI,SAAS,GAAG,EAAE,CAAC;QACnB,IAAI,OAAO,GAAG,EAAE,CAAC;QACjB,IAAI,aAAa,EAAE,CAAC;YAClB,SAAS,GAAG;gBACV,wCAAmB;gBACnB;oBACE,OAAO,EAAE,yBAAc;oBACvB,QAAQ,EAAE,aAAa;iBACxB;aACF,CAAC;YACF,OAAO,GAAG,CAAC,yBAAc,CAAC,CAAC;QAC7B,CAAC;QACD,OAAO;YACL,MAAM,EAAE,eAAa;YACrB,SAAS;YACT,OAAO;SACR,CAAC;IACJ,CAAC;CACF,CAAA;AAvEY,sCAAa;wBAAb,aAAa;IAnDzB,IAAA,eAAM,GAAE;IACR,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,CAAC,sBAAS,EAAE,kBAAU,EAAE,yBAAc,CAAC,OAAO,EAAE,CAAC;QAC1D,WAAW,EAAE,EAAE;QACf,SAAS,EAAE;YACT,mCAAiB;YACjB,wCAAmB;YACnB,0CAAoB;YACpB,uDAA0B;YAC1B,yCAAoB;YACpB,4DAA8B;YAC9B,2EAAqC;YACrC,mFAAyC;YACzC,yDAA4B;YAC5B,4CAAqB;YACrB,gCAAc;YACd,iDAAuB;YACvB,+EAAuC;YACvC,uFAA2C;YAC3C,gEAAgC;YAChC,6DAA8B;YAC9B,6CAAsB;YACtB,6CAAqB;YACrB,kDAAwB;YACxB,uCAAe;YACf,wCAAuB;SACxB;QACD,OAAO,EAAE;YACP,mCAAiB;YACjB,wCAAmB;YACnB,0CAAoB;YACpB,uDAA0B;YAC1B,yCAAoB;YACpB,4DAA8B;YAC9B,2EAAqC;YACrC,mFAAyC;YACzC,yDAA4B;YAC5B,4CAAqB;YACrB,gCAAc;YACd,iDAAuB;YACvB,+EAAuC;YACvC,uFAA2C;YAC3C,gEAAgC;YAChC,6DAA8B;YAC9B,6CAAsB;YACtB,6CAAqB;YACrB,kDAAwB;YACxB,uCAAe;YACf,wCAAuB;SACxB;KACF,CAAC;GACW,aAAa,CAuEzB"}
1
+ {"version":3,"file":"phx.module.js","sourceRoot":"","sources":["../src/phx.module.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare function runWithSentryCheckIn(monitorSlug: string, cronTime: string, cronTask: () => Promise<void>, monitorConfig: any): Promise<void>;
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.runWithSentryCheckIn = runWithSentryCheckIn;
13
+ const Sentry = require("@sentry/nestjs");
14
+ const constant_1 = require("../lib/constant");
15
+ function runWithSentryCheckIn(monitorSlug, cronTime, cronTask, monitorConfig) {
16
+ return __awaiter(this, void 0, void 0, function* () {
17
+ if (process.env.ENV === constant_1.envProd) {
18
+ const { checkInMargin, maxRuntime } = monitorConfig;
19
+ const checkInId = Sentry.captureCheckIn({
20
+ monitorSlug,
21
+ status: "in_progress",
22
+ }, {
23
+ schedule: {
24
+ type: "crontab",
25
+ value: cronTime,
26
+ },
27
+ checkinMargin: checkInMargin,
28
+ maxRuntime,
29
+ failureIssueThreshold: 3,
30
+ });
31
+ try {
32
+ yield cronTask();
33
+ const res = Sentry.captureCheckIn({
34
+ checkInId,
35
+ monitorSlug,
36
+ status: "ok",
37
+ });
38
+ console.log("res", res);
39
+ }
40
+ catch (err) {
41
+ Sentry.withScope((scope) => {
42
+ scope.setTag("errorType", "catch");
43
+ Sentry.captureException(err);
44
+ Sentry.captureCheckIn({
45
+ checkInId,
46
+ monitorSlug,
47
+ status: "error",
48
+ });
49
+ });
50
+ throw new Error(err);
51
+ }
52
+ }
53
+ else {
54
+ yield cronTask();
55
+ }
56
+ });
57
+ }
58
+ //# sourceMappingURL=sentry-monitor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sentry-monitor.js","sourceRoot":"","sources":["../../src/sentry-config/sentry-monitor.ts"],"names":[],"mappings":";;;;;;;;;;;AAGA,oDAiDC;AApDD,yCAAyC;AACzC,8CAA2C;AAE3C,SAAsB,oBAAoB,CACxC,WAAmB,EACnB,QAAgB,EAChB,QAA6B,EAC7B,aAAkB;;QAElB,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,kBAAO,EAAE,CAAC;YAChC,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,GAAG,aAAa,CAAC;YAEpD,MAAM,SAAS,GAAG,MAAM,CAAC,cAAc,CACrC;gBACE,WAAW;gBACX,MAAM,EAAE,aAAa;aACtB,EACD;gBACE,QAAQ,EAAE;oBACR,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,QAAQ;iBAChB;gBACD,aAAa,EAAE,aAAa;gBAC5B,UAAU;gBACV,qBAAqB,EAAE,CAAC;aACzB,CACF,CAAC;YAEF,IAAI,CAAC;gBACH,MAAM,QAAQ,EAAE,CAAC;gBACjB,MAAM,GAAG,GAAG,MAAM,CAAC,cAAc,CAAC;oBAChC,SAAS;oBACT,WAAW;oBACX,MAAM,EAAE,IAAI;iBACb,CAAC,CAAC;gBACH,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YAC1B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;oBACzB,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;oBACnC,MAAM,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;oBAC7B,MAAM,CAAC,cAAc,CAAC;wBACpB,SAAS;wBACT,WAAW;wBACX,MAAM,EAAE,OAAO;qBAChB,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,QAAQ,EAAE,CAAC;QACnB,CAAC;IACH,CAAC;CAAA"}