@viplance/nestjs-logger 0.4.7 → 0.4.9
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 +23 -13
- package/dist/log.module.js +7 -2
- package/dist/log.module.js.map +1 -1
- package/dist/services/log.service.d.ts +1 -1
- package/dist/services/log.service.js +50 -8
- package/dist/services/log.service.js.map +1 -1
- package/dist/services/memory-db.service.d.ts +6 -0
- package/dist/services/memory-db.service.js +85 -1
- package/dist/services/memory-db.service.js.map +1 -1
- package/dist/services/ws.service.d.ts +2 -4
- package/dist/services/ws.service.js +61 -32
- package/dist/services/ws.service.js.map +1 -1
- package/package.json +1 -1
- package/public/index.html +3 -1
- package/public/scripts/common.js +162 -30
- package/public/scripts/details-popup.js +2 -2
- package/public/scripts/ws.js +35 -5
- package/public/styles/index.css +177 -2
- package/src/log.module.ts +8 -2
- package/src/services/log.service.ts +68 -8
- package/src/services/memory-db.service.ts +90 -3
- package/src/services/ws.service.ts +33 -36
package/README.md
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
# @viplance/nestjs-logger
|
|
2
|
+
|
|
2
3
|
## NestJS internal logging system
|
|
3
4
|
|
|
4
5
|
[](https://www.npmjs.com/package/@viplance/nestjs-logger)
|
|
@@ -9,8 +10,10 @@
|
|
|
9
10
|
</p>
|
|
10
11
|
|
|
11
12
|
### Installation
|
|
13
|
+
|
|
12
14
|
1. Install the package `npm i @viplance/nestjs-logger`<br />
|
|
13
15
|
2. Import the module in app.module.ts<br />
|
|
16
|
+
|
|
14
17
|
```typescript
|
|
15
18
|
import { LogModule } from '@viplance/nestjs-logger';
|
|
16
19
|
|
|
@@ -35,6 +38,7 @@
|
|
|
35
38
|
```
|
|
36
39
|
|
|
37
40
|
Connect a SQL or NoSQL database to store logs.<br />
|
|
41
|
+
|
|
38
42
|
```typescript
|
|
39
43
|
await LogModule.init(app, {
|
|
40
44
|
...,
|
|
@@ -48,6 +52,7 @@ Connect a SQL or NoSQL database to store logs.<br />
|
|
|
48
52
|
```
|
|
49
53
|
|
|
50
54
|
Enable a WebSocket connection to receive the logs in real time.<br />
|
|
55
|
+
|
|
51
56
|
```typescript
|
|
52
57
|
await LogModule.init(app, {
|
|
53
58
|
...,
|
|
@@ -60,6 +65,7 @@ Enable a WebSocket connection to receive the logs in real time.<br />
|
|
|
60
65
|
```
|
|
61
66
|
|
|
62
67
|
4. Use the `LogService` in case of custom logs to debug the application.<br />
|
|
68
|
+
|
|
63
69
|
```typescript
|
|
64
70
|
import { LogService } from '@viplance/nestjs-logger';
|
|
65
71
|
|
|
@@ -67,17 +73,20 @@ Enable a WebSocket connection to receive the logs in real time.<br />
|
|
|
67
73
|
|
|
68
74
|
this.logService.log('Some log information');
|
|
69
75
|
```
|
|
76
|
+
|
|
70
77
|
<br />
|
|
71
78
|
|
|
72
79
|
### Additional information
|
|
73
80
|
|
|
74
|
-
-
|
|
81
|
+
- Use WebSocket and the default in-memory database for single-instance applications. For multiple instances, use the database option and the HTTP interface
|
|
82
|
+
- `path`, `key`, `database` and `websocket` properties are optional
|
|
75
83
|
- The log UI could be available at `your_application_url`/`path`?key=`key` or WebSocket port
|
|
76
84
|
- The log API could be available at `your_application_url`/`path`/api?key=`key`
|
|
77
85
|
- By default the logs will be stored in memory and deleted when the application stops.<br />
|
|
78
|
-
<br />
|
|
86
|
+
<br />
|
|
87
|
+
|
|
88
|
+
### The LogModule options
|
|
79
89
|
|
|
80
|
-
### The LogModule options:
|
|
81
90
|
- path?: string;
|
|
82
91
|
- key?: string; // access key
|
|
83
92
|
- join?: boolean; // merge the message duplicates
|
|
@@ -85,20 +94,21 @@ Enable a WebSocket connection to receive the logs in real time.<br />
|
|
|
85
94
|
- maxAge?: number; // in days
|
|
86
95
|
- maxSize?: number; // in megabytes
|
|
87
96
|
- database?: DataSourceOptions & {
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
97
|
+
host?: string;
|
|
98
|
+
port?: string;
|
|
99
|
+
table?: string;
|
|
100
|
+
collection?: string;
|
|
92
101
|
};
|
|
93
102
|
- websocket?: {
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
103
|
+
port?: number;
|
|
104
|
+
namespace?: string;
|
|
105
|
+
host?: string;
|
|
106
|
+
secure?: boolean;
|
|
98
107
|
};
|
|
99
|
-
<br />
|
|
108
|
+
<br />
|
|
109
|
+
|
|
110
|
+
### The LogService methods
|
|
100
111
|
|
|
101
|
-
### The LogService methods:
|
|
102
112
|
- log(message: string, context?: object)
|
|
103
113
|
- error(message: string, context?: object)
|
|
104
114
|
- warn(message: string, context?: object)
|
package/dist/log.module.js
CHANGED
|
@@ -48,10 +48,15 @@ let LogModule = class LogModule {
|
|
|
48
48
|
}
|
|
49
49
|
res.json(result);
|
|
50
50
|
});
|
|
51
|
-
// get
|
|
51
|
+
// get logs endpoint
|
|
52
52
|
httpAdapter.get((0, node_path_1.join)(options.path, 'api'), async (req, res) => {
|
|
53
53
|
logAccessGuard.canActivate(req);
|
|
54
|
-
|
|
54
|
+
const params = node_querystring_1.default.parse(req.url.split('?')[1]);
|
|
55
|
+
const page = params.page ? parseInt(params.page.toString()) : 1;
|
|
56
|
+
const limit = params.limit ? parseInt(params.limit.toString()) : 50;
|
|
57
|
+
const search = params.search ? params.search.toString() : '';
|
|
58
|
+
const types = params.types ? params.types.toString().split(',') : [];
|
|
59
|
+
res.json(await logService.getAll(page, limit, search, types));
|
|
55
60
|
});
|
|
56
61
|
// delete log endpoint
|
|
57
62
|
httpAdapter.delete((0, node_path_1.join)(options.path, 'api'), async (req, res) => {
|
package/dist/log.module.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"log.module.js","sourceRoot":"","sources":["../src/log.module.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA+D;AAC/D,wDAAoD;AACpD,oEAA+D;AAC/D,oEAAgE;AAEhE,6CAAgD;AAChD,wEAA2C;AAC3C,uCAAiD;AACjD,yCAAiC;AACjC,wDAAuD;AACvD,sDAAkD;AAc3C,IAAM,SAAS,GAAf,MAAM,SAAS;IACb,MAAM,CAAC,KAAK,CAAC,IAAI,CACtB,GAAQ,EACR,OAA0B;QAE1B,MAAM,UAAU,GAAe,MAAM,GAAG,CAAC,GAAG,CAAC,wBAAU,CAAC,CAAC;QACzD,MAAM,SAAS,GAAc,MAAM,GAAG,CAAC,GAAG,CAAC,sBAAS,CAAC,CAAC;QACtD,MAAM,cAAc,GAAmB,MAAM,GAAG,CAAC,GAAG,CAAC,6BAAc,CAAC,CAAC;QAErE,IAAI,OAAO,EAAE,CAAC;YACZ,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACjC,CAAC;QAED,GAAG,CAAC,qBAAqB,CAAC,IAAI,gCAAc,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,uBAAuB;QAElF,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,EAAE,CAAC;YAClB,GAAG,CAAC,eAAe,CAAC,IAAA,gBAAI,EAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE;gBACnD,MAAM,EAAE,OAAO,CAAC,IAAI;aACrB,CAAC,CAAC;YAEH,MAAM,WAAW,GAAG,GAAG,CAAC,cAAc,EAAE,CAAC;YAEzC,6BAA6B;YAC7B,WAAW,CAAC,GAAG,CACb,IAAA,gBAAI,EAAC,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,EAC9B,KAAK,EAAE,GAAQ,EAAE,GAAQ,EAAE,EAAE;;gBAC3B,cAAc,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;gBAEhC,MAAM,MAAM,GAA2B,EAAE,CAAC;gBAE1C,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,EAAE,CAAC;oBACvB,MAAM,CAAC,SAAS,GAAG;wBACjB,SAAS,EAAE,MAAA,OAAO,CAAC,SAAS,0CAAE,SAAS;wBACvC,IAAI,EAAE,MAAA,OAAO,CAAC,SAAS,0CAAE,IAAI;wBAC7B,IAAI,EAAE,CAAA,MAAA,OAAO,CAAC,SAAS,0CAAE,IAAI,MAAI,MAAA,GAAG,CAAC,OAAO,0CAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;qBACjE,CAAC;gBACJ,CAAC;gBAED,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACnB,CAAC,CACF,CAAC;YAEF,
|
|
1
|
+
{"version":3,"file":"log.module.js","sourceRoot":"","sources":["../src/log.module.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,7 +26,7 @@ export declare class LogService implements LoggerService, OnApplicationShutdown
|
|
|
26
26
|
warn(message: string, context?: ExecutionContextHost | object): void;
|
|
27
27
|
debug(message: string, context?: ExecutionContextHost | object): void;
|
|
28
28
|
verbose(message: string, context?: ExecutionContextHost): void;
|
|
29
|
-
getAll(): Promise<any[]>;
|
|
29
|
+
getAll(page?: number, limit?: number, search?: string, types?: string[]): Promise<any[]>;
|
|
30
30
|
delete(_id: string): Promise<import("typeorm").DeleteResult>;
|
|
31
31
|
private smartInsert;
|
|
32
32
|
private getNewObjectId;
|
|
@@ -17,7 +17,6 @@ const defaults_1 = require("../defaults");
|
|
|
17
17
|
const types_1 = require("../types");
|
|
18
18
|
const typeorm_1 = require("typeorm");
|
|
19
19
|
const log_entity_1 = require("../entities/log.entity");
|
|
20
|
-
const execution_context_host_1 = require("@nestjs/core/helpers/execution-context-host");
|
|
21
20
|
const timers_1 = require("timers");
|
|
22
21
|
const entity2table_1 = require("../utils/entity2table");
|
|
23
22
|
const ws_service_1 = require("./ws.service");
|
|
@@ -72,7 +71,7 @@ let LogService = LogService_1 = class LogService {
|
|
|
72
71
|
case 'getLogs':
|
|
73
72
|
this.wsService.sendMessage({
|
|
74
73
|
action: 'list',
|
|
75
|
-
data: await this.getAll(),
|
|
74
|
+
data: await this.getAll(message.page, message.limit, message.search, message.types),
|
|
76
75
|
});
|
|
77
76
|
break;
|
|
78
77
|
case 'delete':
|
|
@@ -124,8 +123,11 @@ let LogService = LogService_1 = class LogService {
|
|
|
124
123
|
context,
|
|
125
124
|
});
|
|
126
125
|
}
|
|
127
|
-
async getAll() {
|
|
128
|
-
|
|
126
|
+
async getAll(page = 1, limit = 50, search = '', types = []) {
|
|
127
|
+
var _a, _b, _c, _d;
|
|
128
|
+
const skip = (page - 1) * limit;
|
|
129
|
+
const take = limit;
|
|
130
|
+
const findOptions = {
|
|
129
131
|
select: [
|
|
130
132
|
'_id',
|
|
131
133
|
'type',
|
|
@@ -138,7 +140,47 @@ let LogService = LogService_1 = class LogService {
|
|
|
138
140
|
'breadcrumbs',
|
|
139
141
|
],
|
|
140
142
|
order: { updatedAt: 'DESC' },
|
|
141
|
-
|
|
143
|
+
take,
|
|
144
|
+
skip,
|
|
145
|
+
};
|
|
146
|
+
if (search) {
|
|
147
|
+
if (((_b = (_a = LogService_1.options) === null || _a === void 0 ? void 0 : _a.database) === null || _b === void 0 ? void 0 : _b.type) === 'mongodb') {
|
|
148
|
+
const where = {
|
|
149
|
+
$or: [
|
|
150
|
+
{ message: { $regex: search, $options: 'i' } },
|
|
151
|
+
{ trace: { $regex: search, $options: 'i' } },
|
|
152
|
+
],
|
|
153
|
+
};
|
|
154
|
+
if (types.length > 0) {
|
|
155
|
+
where.type = { $in: types };
|
|
156
|
+
}
|
|
157
|
+
findOptions.where = where;
|
|
158
|
+
}
|
|
159
|
+
else {
|
|
160
|
+
findOptions.where = [
|
|
161
|
+
{ message: (0, typeorm_1.Like)(`%${search}%`) },
|
|
162
|
+
{ trace: (0, typeorm_1.Like)(`%${search}%`) },
|
|
163
|
+
];
|
|
164
|
+
if (types.length > 0) {
|
|
165
|
+
findOptions.where.forEach((option) => {
|
|
166
|
+
option.type = (0, typeorm_1.In)(types);
|
|
167
|
+
});
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
else if (types.length > 0) {
|
|
172
|
+
if (((_d = (_c = LogService_1.options) === null || _c === void 0 ? void 0 : _c.database) === null || _d === void 0 ? void 0 : _d.type) === 'mongodb') {
|
|
173
|
+
findOptions.where = {
|
|
174
|
+
type: { $in: types },
|
|
175
|
+
};
|
|
176
|
+
}
|
|
177
|
+
else {
|
|
178
|
+
findOptions.where = {
|
|
179
|
+
type: (0, typeorm_1.In)(types),
|
|
180
|
+
};
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
return this.getConnection().find(LogService_1.Log, findOptions);
|
|
142
184
|
}
|
|
143
185
|
async delete(_id) {
|
|
144
186
|
this.wsService.sendMessage({
|
|
@@ -148,12 +190,12 @@ let LogService = LogService_1 = class LogService {
|
|
|
148
190
|
return this.getConnection().delete(LogService_1.Log, _id);
|
|
149
191
|
}
|
|
150
192
|
async smartInsert(data) {
|
|
151
|
-
var _a;
|
|
152
193
|
const currentDate = new Date();
|
|
153
194
|
const connection = this.getConnection();
|
|
154
195
|
// find the same log in DB
|
|
155
196
|
let log;
|
|
156
|
-
if (
|
|
197
|
+
if (LogService_1.options &&
|
|
198
|
+
(LogService_1.options.join || LogService_1.options.join === undefined)) {
|
|
157
199
|
log = await connection.findOne(LogService_1.Log, {
|
|
158
200
|
where: {
|
|
159
201
|
type: data.type,
|
|
@@ -161,7 +203,7 @@ let LogService = LogService_1 = class LogService {
|
|
|
161
203
|
},
|
|
162
204
|
});
|
|
163
205
|
}
|
|
164
|
-
const context = data.context
|
|
206
|
+
const context = data.context && typeof data.context.getArgs === 'function'
|
|
165
207
|
? this.parseContext(data.context)
|
|
166
208
|
: data.context;
|
|
167
209
|
if (log) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"log.service.js","sourceRoot":"","sources":["../../src/services/log.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,2CAIwB;AACxB,2DAAsD;AACtD,0CAA2C;AAC3C,oCAA8D;AAC9D,
|
|
1
|
+
{"version":3,"file":"log.service.js","sourceRoot":"","sources":["../../src/services/log.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,12 @@ export declare class MemoryDbService {
|
|
|
6
6
|
update(entity: EntitySchema, condition: any, data: any): Promise<string>;
|
|
7
7
|
find(entity: EntitySchema, options?: {
|
|
8
8
|
select?: string[];
|
|
9
|
+
where?: any;
|
|
10
|
+
order?: {
|
|
11
|
+
[key: string]: 'ASC' | 'DESC';
|
|
12
|
+
};
|
|
13
|
+
take?: number;
|
|
14
|
+
skip?: number;
|
|
9
15
|
}): Promise<any[]>;
|
|
10
16
|
getOneById(entity: EntitySchema, _id: string): Promise<any>;
|
|
11
17
|
delete(entity: EntitySchema, _id: string): Promise<any>;
|
|
@@ -53,7 +53,91 @@ let MemoryDbService = class MemoryDbService {
|
|
|
53
53
|
return Promise.reject();
|
|
54
54
|
}
|
|
55
55
|
async find(entity, options) {
|
|
56
|
+
var _a;
|
|
56
57
|
const table = this.getTableName(entity);
|
|
58
|
+
let data = [...this.db[table]];
|
|
59
|
+
// filter by search if where contains $or or Like (simplified for memory db)
|
|
60
|
+
// filter by search if where contains $or or Like (simplified for memory db)
|
|
61
|
+
if (options === null || options === void 0 ? void 0 : options.where) {
|
|
62
|
+
if (options.where.$or) {
|
|
63
|
+
const search = options.where.$or[0].message.$regex;
|
|
64
|
+
if (search) {
|
|
65
|
+
const regex = new RegExp(search, 'i');
|
|
66
|
+
data = data.filter((item) => regex.test(item.message) || regex.test(item.trace || ''));
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
else if (Array.isArray(options.where)) {
|
|
70
|
+
// handle Like constraints
|
|
71
|
+
const searchItem = options.where.find((w) => w.message);
|
|
72
|
+
if (searchItem && searchItem.message) {
|
|
73
|
+
let search = '';
|
|
74
|
+
if (typeof searchItem.message === 'string') {
|
|
75
|
+
search = searchItem.message.replace(/%/g, '');
|
|
76
|
+
}
|
|
77
|
+
else if (searchItem.message.value) {
|
|
78
|
+
// FindOperator
|
|
79
|
+
search = searchItem.message.value.replace(/%/g, '');
|
|
80
|
+
}
|
|
81
|
+
else if (searchItem.message._value) {
|
|
82
|
+
// FindOperator private
|
|
83
|
+
search = searchItem.message._value.replace(/%/g, '');
|
|
84
|
+
}
|
|
85
|
+
if (search) {
|
|
86
|
+
const regex = new RegExp(search, 'i');
|
|
87
|
+
data = data.filter((item) => regex.test(item.message) || regex.test(item.trace || ''));
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
// Handle type filtering
|
|
92
|
+
let types = null;
|
|
93
|
+
let typeVal;
|
|
94
|
+
if (Array.isArray(options.where)) {
|
|
95
|
+
typeVal = (_a = options.where[0]) === null || _a === void 0 ? void 0 : _a.type;
|
|
96
|
+
}
|
|
97
|
+
else {
|
|
98
|
+
typeVal = options.where.type;
|
|
99
|
+
}
|
|
100
|
+
if (typeVal) {
|
|
101
|
+
if (Array.isArray(typeVal)) {
|
|
102
|
+
types = typeVal;
|
|
103
|
+
}
|
|
104
|
+
else if (typeVal.value && Array.isArray(typeVal.value)) {
|
|
105
|
+
types = typeVal.value;
|
|
106
|
+
}
|
|
107
|
+
else if (typeVal._value && Array.isArray(typeVal._value)) {
|
|
108
|
+
types = typeVal._value;
|
|
109
|
+
}
|
|
110
|
+
else if (typeVal.$in && Array.isArray(typeVal.$in)) {
|
|
111
|
+
types = typeVal.$in;
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
if (types) {
|
|
115
|
+
data = data.filter((item) => types.includes(item.type));
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
// sort
|
|
119
|
+
if (options === null || options === void 0 ? void 0 : options.order) {
|
|
120
|
+
const field = Object.keys(options.order)[0];
|
|
121
|
+
const direction = options.order[field];
|
|
122
|
+
data.sort((a, b) => {
|
|
123
|
+
if (a[field] < b[field])
|
|
124
|
+
return direction === 'ASC' ? -1 : 1;
|
|
125
|
+
if (a[field] > b[field])
|
|
126
|
+
return direction === 'ASC' ? 1 : -1;
|
|
127
|
+
return 0;
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
else {
|
|
131
|
+
data.sort((a, b) => b.updatedAt - a.updatedAt);
|
|
132
|
+
}
|
|
133
|
+
// pagination
|
|
134
|
+
if ((options === null || options === void 0 ? void 0 : options.skip) !== undefined) {
|
|
135
|
+
data = data.slice(options.skip);
|
|
136
|
+
}
|
|
137
|
+
if ((options === null || options === void 0 ? void 0 : options.take) !== undefined) {
|
|
138
|
+
data = data.slice(0, options.take);
|
|
139
|
+
}
|
|
140
|
+
// mapping (select)
|
|
57
141
|
let mapOptions = (obj) => obj; // return the object as is by default
|
|
58
142
|
if (options === null || options === void 0 ? void 0 : options.select) {
|
|
59
143
|
mapOptions = (obj) => {
|
|
@@ -64,7 +148,7 @@ let MemoryDbService = class MemoryDbService {
|
|
|
64
148
|
return newObj;
|
|
65
149
|
};
|
|
66
150
|
}
|
|
67
|
-
return Promise.resolve(
|
|
151
|
+
return Promise.resolve(data.map(mapOptions));
|
|
68
152
|
}
|
|
69
153
|
async getOneById(entity, _id) {
|
|
70
154
|
const table = this.getTableName(entity);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory-db.service.js","sourceRoot":"","sources":["../../src/services/memory-db.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kBAAkB;AAClB,2CAA4C;AAC5C,mCAAiD;AACjD,0CAA2C;AAG3C,MAAM,MAAM,GAAG,CAAC,uBAAY,CAAC,CAAC;AAGvB,IAAM,eAAe,GAArB,MAAM,eAAe;IAG1B;QAFQ,OAAE,GAA6B,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"memory-db.service.js","sourceRoot":"","sources":["../../src/services/memory-db.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,16 +2,14 @@ import { LogModuleOptions } from '../types';
|
|
|
2
2
|
import { Subject } from 'rxjs';
|
|
3
3
|
export declare class WsService {
|
|
4
4
|
onMessage: Subject<any>;
|
|
5
|
-
private
|
|
6
|
-
private connected;
|
|
5
|
+
private clients;
|
|
7
6
|
private connectionTimeout;
|
|
8
7
|
private options;
|
|
9
8
|
private key;
|
|
9
|
+
private wsServer;
|
|
10
10
|
setupConnection(options: LogModuleOptions['websocket'], key?: string): void;
|
|
11
11
|
sendMessage(message: any): void;
|
|
12
12
|
private handleError;
|
|
13
|
-
private closeConnection;
|
|
14
|
-
private ping;
|
|
15
13
|
private handleMessage;
|
|
16
14
|
private getServerUrl;
|
|
17
15
|
private handleOpenConnection;
|
|
@@ -1,45 +1,65 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
2
18
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
19
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
20
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
21
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
22
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
23
|
};
|
|
24
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
25
|
+
var ownKeys = function(o) {
|
|
26
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
27
|
+
var ar = [];
|
|
28
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
29
|
+
return ar;
|
|
30
|
+
};
|
|
31
|
+
return ownKeys(o);
|
|
32
|
+
};
|
|
33
|
+
return function (mod) {
|
|
34
|
+
if (mod && mod.__esModule) return mod;
|
|
35
|
+
var result = {};
|
|
36
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
37
|
+
__setModuleDefault(result, mod);
|
|
38
|
+
return result;
|
|
39
|
+
};
|
|
40
|
+
})();
|
|
8
41
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
42
|
exports.WsService = void 0;
|
|
10
43
|
const common_1 = require("@nestjs/common");
|
|
11
|
-
const ws_1 = require("ws");
|
|
44
|
+
const ws_1 = __importStar(require("ws"));
|
|
12
45
|
const rxjs_1 = require("rxjs");
|
|
13
46
|
let WsService = class WsService {
|
|
14
47
|
constructor() {
|
|
15
48
|
this.onMessage = new rxjs_1.Subject();
|
|
16
|
-
this.
|
|
17
|
-
this.connected = false;
|
|
49
|
+
this.clients = new Set();
|
|
18
50
|
this.connectionTimeout = 500;
|
|
19
51
|
this.options = {
|
|
20
52
|
port: 8080,
|
|
21
53
|
host: 'localhost',
|
|
22
54
|
};
|
|
23
55
|
this.key = '';
|
|
56
|
+
this.wsServer = null;
|
|
24
57
|
this.handleError = () => {
|
|
25
58
|
const serverUrl = this.getServerUrl();
|
|
26
59
|
console.error(`Server ${serverUrl} is not available.`);
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
clearTimeout(connection.pingTimeout);
|
|
31
|
-
if (this.connected) {
|
|
32
|
-
console.log('Connection has been closed by server.');
|
|
33
|
-
this.connected = false;
|
|
34
|
-
this.handleError();
|
|
35
|
-
}
|
|
36
|
-
};
|
|
37
|
-
this.ping = (connection) => {
|
|
38
|
-
console.log('Ping remote server.');
|
|
39
|
-
clearTimeout(connection.pingTimeout);
|
|
40
|
-
connection.pingTimeout = setTimeout(() => {
|
|
41
|
-
connection.terminate();
|
|
42
|
-
}, 30000 + this.connectionTimeout);
|
|
60
|
+
// If server failed, reset instance so retry can happen
|
|
61
|
+
this.wsServer = null;
|
|
62
|
+
setTimeout(() => this.setupConnection(this.options, this.key), this.connectionTimeout);
|
|
43
63
|
};
|
|
44
64
|
this.handleMessage = (message) => {
|
|
45
65
|
try {
|
|
@@ -61,7 +81,6 @@ let WsService = class WsService {
|
|
|
61
81
|
return `${((_a = this.options) === null || _a === void 0 ? void 0 : _a.secure) ? 'wss' : 'ws'}://${(_b = this.options) === null || _b === void 0 ? void 0 : _b.host}:${(_c = this.options) === null || _c === void 0 ? void 0 : _c.port}`;
|
|
62
82
|
};
|
|
63
83
|
this.handleOpenConnection = async () => {
|
|
64
|
-
this.connected = true;
|
|
65
84
|
const serverUrl = this.getServerUrl();
|
|
66
85
|
console.log(`${serverUrl} has been connected.`);
|
|
67
86
|
};
|
|
@@ -74,29 +93,39 @@ let WsService = class WsService {
|
|
|
74
93
|
};
|
|
75
94
|
this.key = key;
|
|
76
95
|
// Set up Web Socket server
|
|
77
|
-
if (this.
|
|
96
|
+
if (this.wsServer) {
|
|
78
97
|
return;
|
|
79
98
|
}
|
|
80
|
-
|
|
99
|
+
this.wsServer = new ws_1.WebSocketServer({
|
|
81
100
|
retryCount: 1,
|
|
82
101
|
reconnectInterval: 1,
|
|
83
102
|
handshakeTimeout: this.connectionTimeout,
|
|
84
103
|
port: (_a = this.options) === null || _a === void 0 ? void 0 : _a.port,
|
|
85
104
|
});
|
|
86
105
|
console.log(`Logs WebSocket server is listening on port ${this.options.port}`);
|
|
87
|
-
wsServer.on('error', this.handleError);
|
|
88
|
-
wsServer.on('
|
|
89
|
-
wsServer.on('
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
106
|
+
this.wsServer.on('error', this.handleError);
|
|
107
|
+
this.wsServer.on('listening', () => this.handleOpenConnection());
|
|
108
|
+
this.wsServer.on('close', () => {
|
|
109
|
+
console.log('WebSocket server closed.');
|
|
110
|
+
this.wsServer = null;
|
|
111
|
+
});
|
|
112
|
+
this.wsServer.on('connection', (connection) => {
|
|
113
|
+
this.clients.add(connection);
|
|
114
|
+
connection.on('message', (message) => this.handleMessage(message));
|
|
115
|
+
connection.on('close', () => {
|
|
116
|
+
this.clients.delete(connection);
|
|
117
|
+
});
|
|
118
|
+
connection.on('error', () => {
|
|
119
|
+
this.clients.delete(connection);
|
|
120
|
+
});
|
|
95
121
|
});
|
|
96
122
|
}
|
|
97
123
|
sendMessage(message) {
|
|
98
|
-
|
|
99
|
-
|
|
124
|
+
this.clients.forEach((client) => {
|
|
125
|
+
if (client.readyState === ws_1.default.OPEN) {
|
|
126
|
+
client.send(JSON.stringify(message));
|
|
127
|
+
}
|
|
128
|
+
});
|
|
100
129
|
}
|
|
101
130
|
};
|
|
102
131
|
exports.WsService = WsService;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ws.service.js","sourceRoot":"","sources":["../../src/services/ws.service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ws.service.js","sourceRoot":"","sources":["../../src/services/ws.service.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/public/index.html
CHANGED
|
@@ -64,8 +64,10 @@
|
|
|
64
64
|
|
|
65
65
|
<div id="no-logs" class="content container center"><h3>No logs</h3></div>
|
|
66
66
|
|
|
67
|
-
<div class="container
|
|
67
|
+
<div class="container">
|
|
68
68
|
<section id="logs"></section>
|
|
69
|
+
<div id="loader">Loading...</div>
|
|
70
|
+
<div id="scroll-anchor"></div>
|
|
69
71
|
</div>
|
|
70
72
|
|
|
71
73
|
<div id="popup"></div>
|