phx-node 1.0.32 → 1.0.33

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,9 @@ 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
35
  const schedule_1 = require("@nestjs/schedule");
36
+ const setup_1 = require("@sentry/nestjs/setup");
37
37
  let PHXNestModule = PHXNestModule_1 = class PHXNestModule {
38
38
  static register() {
39
39
  return {
@@ -59,7 +59,6 @@ let PHXNestModule = PHXNestModule_1 = class PHXNestModule {
59
59
  dev_tool_data_service_1.PHXDevToolDataService,
60
60
  cronjob_manager_service_1.PHXCronjobManagerService,
61
61
  clone_cronjob_service_1.PHXCloneCronjob,
62
- sentry_service_1.PHXSentryMonitorService,
63
62
  ],
64
63
  };
65
64
  }
@@ -106,7 +105,12 @@ exports.PHXNestModule = PHXNestModule;
106
105
  exports.PHXNestModule = PHXNestModule = PHXNestModule_1 = __decorate([
107
106
  (0, common_1.Global)(),
108
107
  (0, common_1.Module)({
109
- imports: [api_module_1.ApiModule, axios_1.HttpModule, schedule_1.ScheduleModule.forRoot()],
108
+ imports: [
109
+ api_module_1.ApiModule,
110
+ axios_1.HttpModule,
111
+ schedule_1.ScheduleModule.forRoot(),
112
+ setup_1.SentryModule.forRoot(),
113
+ ],
110
114
  controllers: [],
111
115
  providers: [
112
116
  graphql_service_1.PHXGraphqlService,
@@ -129,7 +133,6 @@ exports.PHXNestModule = PHXNestModule = PHXNestModule_1 = __decorate([
129
133
  dev_tool_data_service_1.PHXDevToolDataService,
130
134
  cronjob_manager_service_1.PHXCronjobManagerService,
131
135
  clone_cronjob_service_1.PHXCloneCronjob,
132
- sentry_service_1.PHXSentryMonitorService,
133
136
  ],
134
137
  exports: [
135
138
  graphql_service_1.PHXGraphqlService,
@@ -152,7 +155,6 @@ exports.PHXNestModule = PHXNestModule = PHXNestModule_1 = __decorate([
152
155
  dev_tool_data_service_1.PHXDevToolDataService,
153
156
  cronjob_manager_service_1.PHXCronjobManagerService,
154
157
  clone_cronjob_service_1.PHXCloneCronjob,
155
- sentry_service_1.PHXSentryMonitorService,
156
158
  ],
157
159
  })
158
160
  ], PHXNestModule);
@@ -1 +1 @@
1
- {"version":3,"file":"phx.module.js","sourceRoot":"","sources":["../src/phx.module.ts"],"names":[],"mappings":"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"}
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"}