@gus-eip/loggers 4.2.9 → 4.3.1

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/README.md CHANGED
@@ -1,92 +1,92 @@
1
- # @gus-eip/loggers
2
-
3
- ## Overview
4
-
5
- `@gus-eip/loggers` is a package designed to provide logging functionality for your Node.js applications. It offers integration with various logging services, including CloudWatchLogger.
6
-
7
- ## Installation
8
-
9
- You can install the package via npm:
10
-
11
- ```bash
12
- npm install @gus-eip/loggers
13
- ```
14
-
15
- ## Usage
16
-
17
- To use the logger module in your application, follow these steps:
18
-
19
- 1. Import `LoggerModule` from `@gus-eip/loggers` inside your module.
20
-
21
- ```javascript
22
- import { LoggerModule } from '@gus-eip/loggers';
23
- ```
24
-
25
- 2. Configure `LoggerModule` in your module by calling the `forRoot` method.
26
-
27
- ```javascript
28
- LoggerModule.forRoot({
29
- region: process.env.REGION,
30
- logGroupName: process.env.LOGGER_LOG_GROUP_NAME,
31
- options: 'CloudWatchLogger',
32
- }),
33
- ```
34
-
35
- Ensure you provide the necessary environment variables (`REGION` and `LOGGER_LOG_GROUP_NAME`) for configuration.
36
-
37
- ## Configuration Options
38
-
39
- - `region`: The AWS region where your CloudWatch logs are located.
40
- - `logGroupName`: The name of the log group where logs will be sent.
41
- - `options`: The options for the logger. Currently, only `'CloudWatchLogger'` is supported.
42
-
43
- ## Example
44
-
45
- ```javascript
46
- import { Module } from '@nestjs/common';
47
- import { LoggerModule } from '@gus-eip/loggers';
48
-
49
- @Module({
50
- imports: [
51
- LoggerModule.forRoot({
52
- region: process.env.REGION,
53
- logGroupName: process.env.LOGGER_LOG_GROUP_NAME,
54
- options: 'CloudWatchLogger',
55
- }),
56
- ],
57
- })
58
- export class AppModule {}
59
- ```
60
-
61
- ```
62
- This repository requires AWS SSM Parameter Store access to retrieve the SQS URL dynamically. Ensure that the application has permission to read LOGGER_SQS_URL.
63
-
64
- ```
65
-
66
- ## License
67
-
68
- This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
69
-
70
- ---
71
-
72
- ## OAP-EIP LOGGER
73
-
74
- Whenever any EIP integration (for example: `oap-handlers`, `oap-backend`, `eip-integration-handlers`, `platform-events-listener`, or `gus-middleware-service`) introduces a new use case, event, or component, follow these steps to keep this package as the single source of truth for EIP logging:
75
-
76
- 1. Add the new use case, event and component identifiers to `enum.ts`.
77
-
78
- 2. Add a user-friendly message/label for the use case in `mappings/usecase-mapping.ts`.
79
-
80
- 3. Update `mappings/source-destination-mapping.ts` to include the use case and the corresponding brand(s) with their `source` and `destination` values. If the use case already exists and a newly onboarded brand uses it, add the brand under that existing use case entry.
81
-
82
- Notes:
83
-
84
- - The `mappings/source-destination-mapping.ts` file is the ultimate source of truth for EIP logger routing and should accurately reflect brand → use case → (source, destination) mappings.
85
- - Keep `enum.ts` identifiers stable. Prefer adding new identifiers rather than renaming existing ones to avoid breaking downstream projects.
86
-
87
- Publishing and downstream updates:
88
-
89
- - After making changes, bump and publish this package.
90
- - Then update the dependency version used by the `gus-eip-analytics` repository: set the new package version in the `dev` branch for development deployments and in the `prod` branch for production deployments so downstream services pick up the release.
91
-
92
- ---
1
+ # @gus-eip/loggers
2
+
3
+ ## Overview
4
+
5
+ `@gus-eip/loggers` is a package designed to provide logging functionality for your Node.js applications. It offers integration with various logging services, including CloudWatchLogger.
6
+
7
+ ## Installation
8
+
9
+ You can install the package via npm:
10
+
11
+ ```bash
12
+ npm install @gus-eip/loggers
13
+ ```
14
+
15
+ ## Usage
16
+
17
+ To use the logger module in your application, follow these steps:
18
+
19
+ 1. Import `LoggerModule` from `@gus-eip/loggers` inside your module.
20
+
21
+ ```javascript
22
+ import { LoggerModule } from '@gus-eip/loggers';
23
+ ```
24
+
25
+ 2. Configure `LoggerModule` in your module by calling the `forRoot` method.
26
+
27
+ ```javascript
28
+ LoggerModule.forRoot({
29
+ region: process.env.REGION,
30
+ logGroupName: process.env.LOGGER_LOG_GROUP_NAME,
31
+ options: 'CloudWatchLogger',
32
+ }),
33
+ ```
34
+
35
+ Ensure you provide the necessary environment variables (`REGION` and `LOGGER_LOG_GROUP_NAME`) for configuration.
36
+
37
+ ## Configuration Options
38
+
39
+ - `region`: The AWS region where your CloudWatch logs are located.
40
+ - `logGroupName`: The name of the log group where logs will be sent.
41
+ - `options`: The options for the logger. Currently, only `'CloudWatchLogger'` is supported.
42
+
43
+ ## Example
44
+
45
+ ```javascript
46
+ import { Module } from '@nestjs/common';
47
+ import { LoggerModule } from '@gus-eip/loggers';
48
+
49
+ @Module({
50
+ imports: [
51
+ LoggerModule.forRoot({
52
+ region: process.env.REGION,
53
+ logGroupName: process.env.LOGGER_LOG_GROUP_NAME,
54
+ options: 'CloudWatchLogger',
55
+ }),
56
+ ],
57
+ })
58
+ export class AppModule {}
59
+ ```
60
+
61
+ ```
62
+ This repository requires AWS SSM Parameter Store access to retrieve the SQS URL dynamically. Ensure that the application has permission to read LOGGER_SQS_URL.
63
+
64
+ ```
65
+
66
+ ## License
67
+
68
+ This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
69
+
70
+ ---
71
+
72
+ ## OAP-EIP LOGGER
73
+
74
+ Whenever any EIP integration (for example: `oap-handlers`, `oap-backend`, `eip-integration-handlers`, `platform-events-listener`, or `gus-middleware-service`) introduces a new use case, event, or component, follow these steps to keep this package as the single source of truth for EIP logging:
75
+
76
+ 1. Add the new use case, event and component identifiers to `enum.ts`.
77
+
78
+ 2. Add a user-friendly message/label for the use case in `mappings/usecase-mapping.ts`.
79
+
80
+ 3. Update `mappings/source-destination-mapping.ts` to include the use case and the corresponding brand(s) with their `source` and `destination` values. If the use case already exists and a newly onboarded brand uses it, add the brand under that existing use case entry.
81
+
82
+ Notes:
83
+
84
+ - The `mappings/source-destination-mapping.ts` file is the ultimate source of truth for EIP logger routing and should accurately reflect brand → use case → (source, destination) mappings.
85
+ - Keep `enum.ts` identifiers stable. Prefer adding new identifiers rather than renaming existing ones to avoid breaking downstream projects.
86
+
87
+ Publishing and downstream updates:
88
+
89
+ - After making changes, bump and publish this package.
90
+ - Then update the dependency version used by the `gus-eip-analytics` repository: set the new package version in the `dev` branch for development deployments and in the `prod` branch for production deployments so downstream services pick up the release.
91
+
92
+ ---
package/dist/enum.d.ts CHANGED
@@ -625,6 +625,18 @@ export declare class LoggerEnum {
625
625
  WEBINAR_RECORDING_COMPLETED: string;
626
626
  ZOOM_WEBINAR_EVENT_RECEIVED: string;
627
627
  ZOOM_WEBHOOK_URL_VALIDATION: string;
628
+ DISCIPLINARY_HISTORY: string;
629
+ FINANCIALS_DECLARATION: string;
630
+ LETTER_OF_RECOMMENDATION: string;
631
+ PROGRAM_SELECTION: string;
632
+ STATEMENT_OF_PURPOSE: string;
633
+ SUPPLEMENTAL_QUESTIONS: string;
634
+ TEST_SCORES: string;
635
+ VISA_INFORMATION: string;
636
+ FAMILY_INFO: string;
637
+ TRANSFER_STUDENTS: string;
638
+ REFERENCES: string;
639
+ ACTIVITIES_AND_INVOLVEMENT: string;
628
640
  };
629
641
  Component: {
630
642
  OAP_FRONTEND: string;
package/dist/enum.js CHANGED
@@ -636,6 +636,18 @@ let LoggerEnum = class LoggerEnum {
636
636
  WEBINAR_RECORDING_COMPLETED: 'WEBINAR_RECORDING_COMPLETED',
637
637
  ZOOM_WEBINAR_EVENT_RECEIVED: 'ZOOM_WEBINAR_EVENT_RECEIVED',
638
638
  ZOOM_WEBHOOK_URL_VALIDATION: 'ZOOM_WEBHOOK_URL_VALIDATION',
639
+ DISCIPLINARY_HISTORY: 'SAVE_DISCIPLINARY_HISTORY_DETAILS',
640
+ FINANCIALS_DECLARATION: 'SAVE_FINANCIALS_DECLARATION_DETAILS',
641
+ LETTER_OF_RECOMMENDATION: 'SAVE_LETTER_OF_RECOMMENDATION_DETAILS',
642
+ PROGRAM_SELECTION: 'SAVE_PROGRAM_SELECTION_DETAILS',
643
+ STATEMENT_OF_PURPOSE: 'SAVE_STATEMENT_OF_PURPOSE_DETAILS',
644
+ SUPPLEMENTAL_QUESTIONS: 'SAVE_SUPPLEMENTAL_QUESTIONS_DETAILS',
645
+ TEST_SCORES: 'SAVE_TEST_SCORES_DETAILS',
646
+ VISA_INFORMATION: 'SAVE_VISA_INFORMATION',
647
+ FAMILY_INFO: 'SAVE_FAMILY_INFO',
648
+ TRANSFER_STUDENTS: 'SAVE_TRANSFER_STUDENTS',
649
+ REFERENCES: 'SAVE_REFERENCES',
650
+ ACTIVITIES_AND_INVOLVEMENT: 'SAVE_ACTIVITIES_AND_INVOLVEMENT',
639
651
  };
640
652
  this.Component = {
641
653
  OAP_FRONTEND: 'OAP-FRONTEND',
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BRAND_USECASE_MAPPING = void 0;
4
4
  exports.BRAND_USECASE_MAPPING = [
5
5
  {
6
- brands: ['LIM College', 'HZU', 'IBAT', 'LSBFMYR', 'UEG', 'UCW', 'UNFC', 'WUL', 'Arden University', 'ARD', 'PU'],
6
+ brands: ['LIM College', 'HZU', 'IBAT', 'LSBFMYR', 'UEG', 'UCW', 'UNFC', 'WUL', 'Arden University', 'ARD', 'PU', 'CUA', 'BenU', 'TUA'],
7
7
  usecase: 'SAVE_BASIC_DETAILS',
8
8
  source: 'OAP',
9
9
  destination: 'GUS Salesforce',
@@ -15,13 +15,13 @@ exports.BRAND_USECASE_MAPPING = [
15
15
  destination: 'GUS Salesforce',
16
16
  },
17
17
  {
18
- brands: ['UCW', 'UNFC', 'UEG'],
18
+ brands: ['UCW', 'UNFC', 'UEG', 'TUA'],
19
19
  usecase: 'SAVE_EMERGENCY_CONTACT_DETAILS',
20
20
  source: 'OAP',
21
21
  destination: 'GUS Salesforce',
22
22
  },
23
23
  {
24
- brands: ['LIM College', 'HZU', 'IBAT', 'UEG', 'WUL'],
24
+ brands: ['LIM College', 'HZU', 'IBAT', 'UEG', 'WUL', 'TUA'],
25
25
  usecase: 'SAVE_ADDITIONAL_INFORMATION',
26
26
  source: 'OAP',
27
27
  destination: 'GUS Salesforce',
@@ -51,7 +51,7 @@ exports.BRAND_USECASE_MAPPING = [
51
51
  destination: 'GUS Salesforce',
52
52
  },
53
53
  {
54
- brands: ['LIM College', 'HZU', 'IBAT', 'LSBFMYR', 'UNFC', 'UEG', 'UCW', 'WUL', 'Arden University', 'ARD', 'PU'],
54
+ brands: ['LIM College', 'HZU', 'IBAT', 'LSBFMYR', 'UNFC', 'UEG', 'UCW', 'WUL', 'Arden University', 'ARD', 'PU', 'CUA', 'BenU', ' TUA'],
55
55
  usecase: 'SUBMIT_APPLICATION',
56
56
  source: 'OAP',
57
57
  destination: 'GUS Salesforce',
@@ -75,25 +75,25 @@ exports.BRAND_USECASE_MAPPING = [
75
75
  destination: 'GUS Salesforce',
76
76
  },
77
77
  {
78
- brands: ['UCW', 'UNFC', 'LSBFMYR', 'UEG'],
78
+ brands: ['UCW', 'UNFC', 'LSBFMYR', 'UEG', 'CUA'],
79
79
  usecase: 'SAVE_EDUCATION_HISTORY_DETAILS',
80
80
  source: 'OAP',
81
81
  destination: 'GUS Salesforce',
82
82
  },
83
83
  {
84
- brands: ['UCW', 'UNFC', 'UEG', 'PU'],
84
+ brands: ['UCW', 'UNFC', 'UEG', 'PU', 'BenU', 'TUA'],
85
85
  usecase: 'SAVE_STANDARDIZED_TESTS_DETAILS',
86
86
  source: 'OAP',
87
87
  destination: 'GUS Salesforce',
88
88
  },
89
89
  {
90
- brands: ['UCW', 'LIM College', 'UEG'],
90
+ brands: ['UCW', 'LIM College', 'UEG', 'CUA'],
91
91
  usecase: 'SAVE_EMPLOYMENT_HISTORY_DETAILS',
92
92
  source: 'OAP',
93
93
  destination: 'GUS Salesforce',
94
94
  },
95
95
  {
96
- brands: ['UCW', 'UNFC', 'UEG'],
96
+ brands: ['UCW', 'UNFC', 'UEG', 'TUA'],
97
97
  usecase: 'SAVE_ADDITIONAL_DOCUMENTS_DETAILS',
98
98
  source: 'OAP',
99
99
  destination: 'GUS Salesforce',
@@ -105,7 +105,7 @@ exports.BRAND_USECASE_MAPPING = [
105
105
  destination: 'GUS Salesforce',
106
106
  },
107
107
  {
108
- brands: ['LIM College', 'HZU', 'IBAT', 'LSBFMYR', 'UNFC', 'UEG', 'UCW', 'WUL', 'Arden University', 'ARD', 'PU'],
108
+ brands: ['LIM College', 'HZU', 'IBAT', 'LSBFMYR', 'UNFC', 'UEG', 'UCW', 'WUL', 'Arden University', 'ARD', 'PU', 'TUA'],
109
109
  usecase: 'SAVE_PROGRAMME_DETAILS',
110
110
  source: 'OAP',
111
111
  destination: 'GUS Salesforce',
@@ -153,37 +153,37 @@ exports.BRAND_USECASE_MAPPING = [
153
153
  destination: 'GUS Salesforce',
154
154
  },
155
155
  {
156
- brands: ['PU'],
156
+ brands: ['PU', 'BenU', 'TUA'],
157
157
  usecase: 'SAVE_IDENTITY_INFORMATION',
158
158
  source: 'OAP',
159
159
  destination: 'GUS Salesforce',
160
160
  },
161
161
  {
162
- brands: ['PU'],
162
+ brands: ['PU', 'BenU'],
163
163
  usecase: 'SAVE_PERSONAL_INFORMATION',
164
164
  source: 'OAP',
165
165
  destination: 'GUS Salesforce',
166
166
  },
167
167
  {
168
- brands: ['PU'],
168
+ brands: ['PU', 'BenU', 'TUA'],
169
169
  usecase: 'SAVE_ACADEMIC_HISTORY',
170
170
  source: 'OAP',
171
171
  destination: 'GUS Salesforce',
172
172
  },
173
173
  {
174
- brands: ['PU'],
174
+ brands: ['PU', 'BenU'],
175
175
  usecase: 'SAVE_PROGRAM_MATERIALS',
176
176
  source: 'OAP',
177
177
  destination: 'GUS Salesforce',
178
178
  },
179
179
  {
180
- brands: ['PU'],
180
+ brands: ['PU', 'BenU'],
181
181
  usecase: 'SAVE_SUPPORTING_INFORMATION',
182
182
  source: 'OAP',
183
183
  destination: 'GUS Salesforce',
184
184
  },
185
185
  {
186
- brands: ['PU'],
186
+ brands: ['PU', 'BenU'],
187
187
  usecase: 'SAVE_RECOMMENDATIONS',
188
188
  source: 'OAP',
189
189
  destination: 'GUS Salesforce',
@@ -194,6 +194,48 @@ exports.BRAND_USECASE_MAPPING = [
194
194
  source: 'OAP',
195
195
  destination: 'GUS Salesforce',
196
196
  },
197
+ {
198
+ brands: ['CUA'],
199
+ usecase: 'SAVE_DISCIPLINARY_HISTORY_DETAILS',
200
+ source: 'OAP',
201
+ destination: 'GUS Salesforce',
202
+ },
203
+ {
204
+ brands: ['CUA'],
205
+ usecase: 'SAVE_FINANCIALS_DECLARATION_DETAILS',
206
+ source: 'OAP',
207
+ destination: 'GUS Salesforce',
208
+ },
209
+ {
210
+ brands: ['CUA'],
211
+ usecase: 'SAVE_LETTER_OF_RECOMMENDATION_DETAILS',
212
+ source: 'OAP',
213
+ destination: 'GUS Salesforce',
214
+ },
215
+ {
216
+ brands: ['CUA'],
217
+ usecase: 'SAVE_PROGRAM_SELECTION_DETAILS',
218
+ source: 'OAP',
219
+ destination: 'GUS Salesforce',
220
+ },
221
+ {
222
+ brands: ['CUA'],
223
+ usecase: 'SAVE_STATEMENT_OF_PURPOSE_DETAILS',
224
+ source: 'OAP',
225
+ destination: 'GUS Salesforce',
226
+ },
227
+ {
228
+ brands: ['CUA'],
229
+ usecase: 'SAVE_SUPPLEMENTAL_QUESTIONS_DETAILS',
230
+ source: 'OAP',
231
+ destination: 'GUS Salesforce',
232
+ },
233
+ {
234
+ brands: ['CUA'],
235
+ usecase: 'SAVE_TEST_SCORES_DETAILS',
236
+ source: 'OAP',
237
+ destination: 'GUS Salesforce',
238
+ },
197
239
  {
198
240
  brands: ['UCW'],
199
241
  usecase: 'SAVE_AWARDS_DETAILS',
@@ -807,7 +849,7 @@ exports.BRAND_USECASE_MAPPING = [
807
849
  destination: 'GUS Salesforce',
808
850
  },
809
851
  {
810
- brands: ['WUL'],
852
+ brands: ['WUL', 'CUA', 'TUA'],
811
853
  usecase: 'SAVE_PERSONAL_BACKGROUND',
812
854
  source: 'OAP',
813
855
  destination: 'GUS Salesforce',
@@ -853,5 +895,35 @@ exports.BRAND_USECASE_MAPPING = [
853
895
  usecase: 'SAVE_DISCLOSURES',
854
896
  source: 'OAP',
855
897
  destination: 'GUS Salesforce',
898
+ },
899
+ {
900
+ brands: ['BenU'],
901
+ usecase: 'SAVE_VISA_INFORMATION',
902
+ source: 'OAP',
903
+ destination: 'GUS Salesforce',
904
+ },
905
+ {
906
+ brands: ['TUA'],
907
+ usecase: 'SAVE_FAMILY_INFO',
908
+ source: 'OAP',
909
+ destination: 'GUS Salesforce',
910
+ },
911
+ {
912
+ brands: ['TUA'],
913
+ usecase: 'SAVE_TRANSFER_STUDENTS',
914
+ source: 'OAP',
915
+ destination: 'GUS Salesforce',
916
+ },
917
+ {
918
+ brands: ['TUA'],
919
+ usecase: 'SAVE_REFERENCES',
920
+ source: 'OAP',
921
+ destination: 'GUS Salesforce',
922
+ },
923
+ {
924
+ brands: ['TUA'],
925
+ usecase: 'SAVE_ACTIVITIES_AND_INVOLVEMENT',
926
+ source: 'OAP',
927
+ destination: 'GUS Salesforce',
856
928
  }
857
929
  ];
@@ -101,6 +101,13 @@ export declare enum UsecaseMapping {
101
101
  SAVE_RECOMMENDATIONS = "Save Recommendations",
102
102
  SAVE_STUDENT_ACCESSIBILITY_AND_DECLARATIONS = "Save Student Accessibility and Declarations",
103
103
  SAVE_EXPERIENCE = "Save Experience",
104
+ SAVE_DISCIPLINARY_HISTORY_DETAILS = "Save Disciplinary History Details",
105
+ SAVE_FINANCIALS_DECLARATION_DETAILS = "Save Financials Declaration Details",
106
+ SAVE_LETTER_OF_RECOMMENDATION_DETAILS = "Save Letter Of Recommendtaion Details",
107
+ SAVE_PROGRAM_SELECTION_DETAILS = "Save Program Selection Details",
108
+ SAVE_STATEMENT_OF_PURPOSE_DETAILS = "Save Statement Of Purpose Details",
109
+ SAVE_SUPPLEMENTAL_QUESTIONS_DETAILS = "Save Supplemental Questions Details",
110
+ SAVE_TEST_SCORES_DETAILS = "Save Test Scores Details",
104
111
  ULAW_LEAD_CREATE = "Lead Creation",
105
112
  ULAW_LEAD_UPDATE = "Lead Update",
106
113
  ULAW_APPLICATION = "New Application",
@@ -110,5 +117,10 @@ export declare enum UsecaseMapping {
110
117
  ULAW_CLOSED_WON = "Closed Won",
111
118
  ULAW_CLOSED_LOST = "Closed Lost",
112
119
  ULAW_OFFER_STAGE = "Offer Stage",
113
- ULAW_ADMISSION_STAGE = "Admission Stage"
120
+ ULAW_ADMISSION_STAGE = "Admission Stage",
121
+ SAVE_VISA_INFORMATION = "Save Visa Information",
122
+ SAVE_FAMILY_INFO = "Save Family Info",
123
+ SAVE_TRANSFER_STUDENTS = "Save Transfer Students",
124
+ SAVE_REFERENCES = "Save References",
125
+ SAVE_ACTIVITIES_AND_INVOLVEMENT = "Save Activities And Involvement"
114
126
  }
@@ -105,6 +105,13 @@ var UsecaseMapping;
105
105
  UsecaseMapping["SAVE_RECOMMENDATIONS"] = "Save Recommendations";
106
106
  UsecaseMapping["SAVE_STUDENT_ACCESSIBILITY_AND_DECLARATIONS"] = "Save Student Accessibility and Declarations";
107
107
  UsecaseMapping["SAVE_EXPERIENCE"] = "Save Experience";
108
+ UsecaseMapping["SAVE_DISCIPLINARY_HISTORY_DETAILS"] = "Save Disciplinary History Details";
109
+ UsecaseMapping["SAVE_FINANCIALS_DECLARATION_DETAILS"] = "Save Financials Declaration Details";
110
+ UsecaseMapping["SAVE_LETTER_OF_RECOMMENDATION_DETAILS"] = "Save Letter Of Recommendtaion Details";
111
+ UsecaseMapping["SAVE_PROGRAM_SELECTION_DETAILS"] = "Save Program Selection Details";
112
+ UsecaseMapping["SAVE_STATEMENT_OF_PURPOSE_DETAILS"] = "Save Statement Of Purpose Details";
113
+ UsecaseMapping["SAVE_SUPPLEMENTAL_QUESTIONS_DETAILS"] = "Save Supplemental Questions Details";
114
+ UsecaseMapping["SAVE_TEST_SCORES_DETAILS"] = "Save Test Scores Details";
108
115
  UsecaseMapping["ULAW_LEAD_CREATE"] = "Lead Creation";
109
116
  UsecaseMapping["ULAW_LEAD_UPDATE"] = "Lead Update";
110
117
  UsecaseMapping["ULAW_APPLICATION"] = "New Application";
@@ -115,4 +122,9 @@ var UsecaseMapping;
115
122
  UsecaseMapping["ULAW_CLOSED_LOST"] = "Closed Lost";
116
123
  UsecaseMapping["ULAW_OFFER_STAGE"] = "Offer Stage";
117
124
  UsecaseMapping["ULAW_ADMISSION_STAGE"] = "Admission Stage";
125
+ UsecaseMapping["SAVE_VISA_INFORMATION"] = "Save Visa Information";
126
+ UsecaseMapping["SAVE_FAMILY_INFO"] = "Save Family Info";
127
+ UsecaseMapping["SAVE_TRANSFER_STUDENTS"] = "Save Transfer Students";
128
+ UsecaseMapping["SAVE_REFERENCES"] = "Save References";
129
+ UsecaseMapping["SAVE_ACTIVITIES_AND_INVOLVEMENT"] = "Save Activities And Involvement";
118
130
  })(UsecaseMapping || (exports.UsecaseMapping = UsecaseMapping = {}));
package/package.json CHANGED
@@ -1,79 +1,79 @@
1
- {
2
- "name": "@gus-eip/loggers",
3
- "version": "4.2.9",
4
- "description": "@gus-eip/loggers is a package designed to provide logging functionality for your Node.js applications.",
5
- "author": "gus",
6
- "readmeFilename": "README.md",
7
- "main": "dist/index.js",
8
- "files": [
9
- "dist/**/*",
10
- "*.md"
11
- ],
12
- "scripts": {
13
- "start:dev": "tsc -w",
14
- "build": "tsc",
15
- "prepare": "npm run build",
16
- "format": "prettier --write \"src/**/*.ts\"",
17
- "lint": "tslint -p tsconfig.json -c tslint.json",
18
- "test": "node --experimental-vm-modules ./node_modules/.bin/jest",
19
- "test:watch": "jest --watch",
20
- "test:cov": "jest --coverage",
21
- "test:e2e": "jest --config ./test/jest-e2e.json"
22
- },
23
- "keywords": [
24
- "nestjs",
25
- "nodejs",
26
- "javascript",
27
- "typescript",
28
- "eip-loggers"
29
- ],
30
- "publishConfig": {
31
- "access": "public"
32
- },
33
- "dependencies": {
34
- "@aws-sdk/client-ssm": "^3.759.0",
35
- "aws-sdk": "^2.1590.0",
36
- "axios": "^1.7.4"
37
- },
38
- "devDependencies": {
39
- "@nestjs/common": "^10.0.2",
40
- "@nestjs/core": "^10.0.2",
41
- "@nestjs/platform-express": "^10.0.2",
42
- "@nestjs/testing": "10.0.2",
43
- "@types/express": "4.17.17",
44
- "@types/jest": "29.5.2",
45
- "@types/lodash": "^4.17.7",
46
- "@types/node": "20.3.1",
47
- "@types/supertest": "2.0.12",
48
- "@typescript-eslint/eslint-plugin": "^5.60.0",
49
- "@typescript-eslint/parser": "^5.60.0",
50
- "eslint": "^8.43.0",
51
- "eslint-config-prettier": "^8.8.0",
52
- "eslint-plugin-prettier": "^4.2.1",
53
- "jest": "29.5.0",
54
- "prettier": "2.8.8",
55
- "reflect-metadata": "^0.1.13",
56
- "rxjs": "^7.8.1",
57
- "supertest": "6.3.3",
58
- "ts-jest": "29.1.0",
59
- "ts-node": "10.9.1",
60
- "tsc-watch": "6.0.4",
61
- "tsconfig-paths": "4.2.0",
62
- "tslint": "5.20.1",
63
- "typescript": "^5.5.4"
64
- },
65
- "jest": {
66
- "moduleFileExtensions": [
67
- "js",
68
- "json",
69
- "ts"
70
- ],
71
- "rootDir": "src",
72
- "testRegex": ".spec.ts$",
73
- "transform": {
74
- "^.+\\.(t|j)s$": "ts-jest"
75
- },
76
- "coverageDirectory": "../coverage",
77
- "testEnvironment": "node"
78
- }
79
- }
1
+ {
2
+ "name": "@gus-eip/loggers",
3
+ "version": "4.3.1",
4
+ "description": "@gus-eip/loggers is a package designed to provide logging functionality for your Node.js applications.",
5
+ "author": "gus",
6
+ "readmeFilename": "README.md",
7
+ "main": "dist/index.js",
8
+ "files": [
9
+ "dist/**/*",
10
+ "*.md"
11
+ ],
12
+ "scripts": {
13
+ "start:dev": "tsc -w",
14
+ "build": "tsc",
15
+ "prepare": "npm run build",
16
+ "format": "prettier --write \"src/**/*.ts\"",
17
+ "lint": "tslint -p tsconfig.json -c tslint.json",
18
+ "test": "node --experimental-vm-modules ./node_modules/.bin/jest",
19
+ "test:watch": "jest --watch",
20
+ "test:cov": "jest --coverage",
21
+ "test:e2e": "jest --config ./test/jest-e2e.json"
22
+ },
23
+ "keywords": [
24
+ "nestjs",
25
+ "nodejs",
26
+ "javascript",
27
+ "typescript",
28
+ "eip-loggers"
29
+ ],
30
+ "publishConfig": {
31
+ "access": "public"
32
+ },
33
+ "dependencies": {
34
+ "@aws-sdk/client-ssm": "^3.759.0",
35
+ "aws-sdk": "^2.1590.0",
36
+ "axios": "^1.7.4"
37
+ },
38
+ "devDependencies": {
39
+ "@nestjs/common": "^10.0.2",
40
+ "@nestjs/core": "^10.0.2",
41
+ "@nestjs/platform-express": "^10.0.2",
42
+ "@nestjs/testing": "10.0.2",
43
+ "@types/express": "4.17.17",
44
+ "@types/jest": "29.5.2",
45
+ "@types/lodash": "^4.17.7",
46
+ "@types/node": "20.3.1",
47
+ "@types/supertest": "2.0.12",
48
+ "@typescript-eslint/eslint-plugin": "^5.60.0",
49
+ "@typescript-eslint/parser": "^5.60.0",
50
+ "eslint": "^8.43.0",
51
+ "eslint-config-prettier": "^8.8.0",
52
+ "eslint-plugin-prettier": "^4.2.1",
53
+ "jest": "29.5.0",
54
+ "prettier": "2.8.8",
55
+ "reflect-metadata": "^0.1.13",
56
+ "rxjs": "^7.8.1",
57
+ "supertest": "6.3.3",
58
+ "ts-jest": "29.1.0",
59
+ "ts-node": "10.9.1",
60
+ "tsc-watch": "6.0.4",
61
+ "tsconfig-paths": "4.2.0",
62
+ "tslint": "5.20.1",
63
+ "typescript": "^5.5.4"
64
+ },
65
+ "jest": {
66
+ "moduleFileExtensions": [
67
+ "js",
68
+ "json",
69
+ "ts"
70
+ ],
71
+ "rootDir": "src",
72
+ "testRegex": ".spec.ts$",
73
+ "transform": {
74
+ "^.+\\.(t|j)s$": "ts-jest"
75
+ },
76
+ "coverageDirectory": "../coverage",
77
+ "testEnvironment": "node"
78
+ }
79
+ }
package/dist/test.d.ts DELETED
@@ -1,2 +0,0 @@
1
- declare const axios: any;
2
- declare function sendNotificationtoTeams(title: any, summary: any, handler: any, logStreamName: any, isFormattingRequired: boolean, type: any): Promise<any>;
package/dist/test.js DELETED
@@ -1,168 +0,0 @@
1
- const axios = require('axios');
2
- async function sendNotificationtoTeams(title, summary, handler, logStreamName, isFormattingRequired = true, type) {
3
- console.log('Notification summary', summary);
4
- const webhookUrl = 'https://gus.webhook.office.com/webhookb2/a7847242-acac-4b2e-9d64-a3818681a2ec@5665ee7a-3634-4975-9c21-2778cda48edd/IncomingWebhook/6b32fef8240843359b1b3e902fb4d716/e06d3c50-7be6-44a2-87e7-48a4696d8297/V26sOW3X1erzRoeQSKP8rq1toiHD1Qtr41icu1ZxSHyh01';
5
- const timestamp = new Date().toISOString();
6
- let headers;
7
- let headerRow;
8
- let separatorRow;
9
- let rows;
10
- let formattedSummary;
11
- if (isFormattingRequired) {
12
- headers = Object.keys(summary[0]);
13
- headerRow = `| ${headers.join(' | ')} |`;
14
- separatorRow = `| ${headers.map(() => '---').join(' | ')} |`;
15
- rows = summary
16
- .map((item) => `| ${headers.map((header) => item[header] || '').join(' | ')} |`)
17
- .join('\n');
18
- formattedSummary = [headerRow, separatorRow, rows].join('\n');
19
- }
20
- const summaryMsg = isFormattingRequired
21
- ? formattedSummary
22
- : typeof summary === 'object'
23
- ? JSON.stringify(summary)
24
- : summary;
25
- const awsLogUrl = `https://eu-west-1.console.aws.amazon.com/cloudwatch/home?region=eu-west-1#logsV2:log-groups/log-group/${this.logGroupName}/log-events/${logStreamName}`;
26
- const isPowerAutomate = webhookUrl.includes('powerautomate');
27
- const alertMessage = isPowerAutomate
28
- ? {
29
- attachments: [
30
- {
31
- contentType: 'application/vnd.microsoft.card.adaptive',
32
- content: {
33
- type: 'AdaptiveCard',
34
- version: '1.4',
35
- body: [
36
- {
37
- type: 'TextBlock',
38
- text: `🚨 ${title} 🚨`,
39
- weight: 'Bolder',
40
- size: 'Large',
41
- color: type === 'Error'
42
- ? 'Attention'
43
- : type === 'Warning'
44
- ? 'Warning'
45
- : 'Good',
46
- },
47
- {
48
- type: 'TextBlock',
49
- text: `Handler: ${handler}`,
50
- wrap: true,
51
- },
52
- {
53
- type: 'TextBlock',
54
- text: `Timestamp: ${timestamp}`,
55
- wrap: true,
56
- },
57
- {
58
- type: 'TextBlock',
59
- text: `Type: ${type}`,
60
- wrap: true,
61
- },
62
- {
63
- type: 'Container',
64
- items: summary.map((item) => ({
65
- type: 'Container',
66
- items: Object.entries(item).map(([key, value]) => ({
67
- type: 'ColumnSet',
68
- columns: [
69
- {
70
- type: 'Column',
71
- width: 'auto',
72
- items: [
73
- {
74
- type: 'TextBlock',
75
- text: key,
76
- weight: 'Bolder',
77
- wrap: true,
78
- },
79
- ],
80
- },
81
- {
82
- type: 'Column',
83
- width: 'stretch',
84
- items: [
85
- {
86
- type: 'TextBlock',
87
- text: typeof value === 'object'
88
- ? JSON.stringify(value, null, 2)
89
- : String(value !== null && value !== void 0 ? value : ''),
90
- wrap: true,
91
- },
92
- ],
93
- },
94
- ],
95
- })),
96
- separator: true,
97
- })),
98
- },
99
- ],
100
- actions: [
101
- {
102
- type: 'Action.OpenUrl',
103
- title: '🔍 View AWS Logs',
104
- url: awsLogUrl,
105
- },
106
- ],
107
- },
108
- },
109
- ],
110
- }
111
- : {
112
- '@type': 'MessageCard',
113
- '@context': 'http://schema.org/extensions',
114
- summary: 'System Alert',
115
- themeColor: type === 'Error'
116
- ? 'FF0000'
117
- : type === 'Warning'
118
- ? 'FFFF00'
119
- : '00FF00',
120
- title: `🚨 ${title} 🚨`,
121
- sections: [
122
- {
123
- facts: [
124
- { name: 'summary:', value: summaryMsg },
125
- { name: 'component:', value: handler },
126
- { name: 'timestamp:', value: timestamp },
127
- { name: 'type:', value: type },
128
- {
129
- name: '',
130
- value: `[Click here for more details](${awsLogUrl})`,
131
- },
132
- ],
133
- markdown: true,
134
- },
135
- ],
136
- };
137
- try {
138
- await axios.post(webhookUrl, alertMessage, {
139
- headers: {
140
- 'Content-Type': 'application/json',
141
- },
142
- });
143
- console.log('Message sent successfully');
144
- }
145
- catch (error) {
146
- console.error('Error sending message:', error);
147
- }
148
- }
149
- (async () => {
150
- await sendNotificationtoTeams('Test Alert', [
151
- {
152
- job: 'gus-dlq-alert-job',
153
- runStatus: 'Started',
154
- ErrorsCount: 0,
155
- },
156
- {
157
- job: 'kyb-kyc-event-listener',
158
- totalhrsRun: 24,
159
- listenerErrorsCount: 0,
160
- },
161
- {
162
- job: 'kyb-kyc-verification-process',
163
- screeningEnquiryCount: 0,
164
- screeningEnquiryFeedbackCount: 0,
165
- sfErrorsCount: 0,
166
- },
167
- ], 'ZoomToBoxSyncHandler', 'TestStream123', true, 'Error');
168
- })();