nestjs-profiler 1.0.25 → 1.0.26
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 +120 -6
- package/collectors/event-collector.d.ts +18 -0
- package/collectors/event-collector.js +254 -0
- package/collectors/event-collector.js.map +1 -0
- package/common/profiler-options.interface.d.ts +8 -0
- package/common/profiler.model.d.ts +25 -0
- package/controllers/profiler.controller.d.ts +13 -1
- package/controllers/profiler.controller.js +103 -17
- package/controllers/profiler.controller.js.map +1 -1
- package/middleware/profiler-auth.middleware.d.ts +10 -0
- package/middleware/profiler-auth.middleware.js +110 -0
- package/middleware/profiler-auth.middleware.js.map +1 -0
- package/package.json +2 -2
- package/profiler.module.js +78 -0
- package/profiler.module.js.map +1 -1
- package/services/entity-explorer.service.d.ts +1 -1
- package/services/entity-explorer.service.js +7 -7
- package/services/entity-explorer.service.js.map +1 -1
- package/services/health.service.js +23 -8
- package/services/health.service.js.map +1 -1
- package/services/profiler.service.d.ts +10 -1
- package/services/profiler.service.js +103 -35
- package/services/profiler.service.js.map +1 -1
- package/services/route-explorer.service.d.ts +23 -1
- package/services/route-explorer.service.js +136 -10
- package/services/route-explorer.service.js.map +1 -1
- package/services/template-builder.service.d.ts +1 -0
- package/services/template-builder.service.js +184 -83
- package/services/template-builder.service.js.map +1 -1
- package/services/view.service.d.ts +1 -1
- package/services/view.service.js +30 -23
- package/services/view.service.js.map +1 -1
- package/views/events.html +763 -0
- package/views/layout.html +31 -9
- package/views/login.html +277 -0
- package/views/routes.html +405 -37
package/services/view.service.js
CHANGED
|
@@ -60,15 +60,20 @@ let ViewService = class ViewService {
|
|
|
60
60
|
template = this.interpolate(template, data);
|
|
61
61
|
return template;
|
|
62
62
|
}
|
|
63
|
-
renderWithLayout(title, content, activeTab = 'requests') {
|
|
63
|
+
renderWithLayout(title, content, activeTab = 'requests', authEnabled = false) {
|
|
64
64
|
const layoutPath = path.join(this.viewsPath, 'layout.html');
|
|
65
65
|
let layout = this.loadTemplate(layoutPath);
|
|
66
|
-
const active = (tab) => activeTab === tab
|
|
67
|
-
|
|
66
|
+
const active = (tab) => activeTab === tab
|
|
67
|
+
? 'bg-indigo-600 text-white'
|
|
68
|
+
: 'text-slate-300 hover:bg-slate-800 hover:text-white';
|
|
69
|
+
const activeIcon = (tab) => activeTab === tab
|
|
70
|
+
? 'text-indigo-300'
|
|
71
|
+
: 'text-slate-400 group-hover:text-white';
|
|
68
72
|
const data = {
|
|
69
73
|
title,
|
|
70
74
|
content,
|
|
71
75
|
activeTab,
|
|
76
|
+
authEnabled: authEnabled ? 'true' : 'false',
|
|
72
77
|
activeClass: 'bg-indigo-600 text-white',
|
|
73
78
|
inactiveClass: 'text-slate-300 hover:bg-slate-800 hover:text-white',
|
|
74
79
|
summaryActive: active('summary'),
|
|
@@ -82,6 +87,7 @@ let ViewService = class ViewService {
|
|
|
82
87
|
healthActive: active('health'),
|
|
83
88
|
liveLogsActive: active('live-logs'),
|
|
84
89
|
codeQualityActive: active('code-quality'),
|
|
90
|
+
eventsActive: active('events'),
|
|
85
91
|
summaryIconClass: activeIcon('summary'),
|
|
86
92
|
requestsIconClass: activeIcon('requests'),
|
|
87
93
|
queriesIconClass: activeIcon('queries'),
|
|
@@ -89,6 +95,7 @@ let ViewService = class ViewService {
|
|
|
89
95
|
entitiesIconClass: activeIcon('entities'),
|
|
90
96
|
routesIconClass: activeIcon('routes'),
|
|
91
97
|
cacheIconClass: activeIcon('cache'),
|
|
98
|
+
eventsIconClass: activeIcon('events'),
|
|
92
99
|
httpCallsIconClass: activeIcon('http-calls'),
|
|
93
100
|
healthIconClass: activeIcon('health'),
|
|
94
101
|
liveLogsIconClass: activeIcon('live-logs'),
|
|
@@ -120,7 +127,7 @@ let ViewService = class ViewService {
|
|
|
120
127
|
'<': '<',
|
|
121
128
|
'>': '>',
|
|
122
129
|
'"': '"',
|
|
123
|
-
"'": '''
|
|
130
|
+
"'": ''',
|
|
124
131
|
};
|
|
125
132
|
return String(text).replace(/[&<>"']/g, (m) => map[m]);
|
|
126
133
|
}
|
|
@@ -128,20 +135,20 @@ let ViewService = class ViewService {
|
|
|
128
135
|
const seconds = Math.floor((Date.now() - timestamp) / 1000);
|
|
129
136
|
let interval = seconds / 31536000;
|
|
130
137
|
if (interval > 1)
|
|
131
|
-
return Math.floor(interval) +
|
|
138
|
+
return Math.floor(interval) + 'y ago';
|
|
132
139
|
interval = seconds / 2592000;
|
|
133
140
|
if (interval > 1)
|
|
134
|
-
return Math.floor(interval) +
|
|
141
|
+
return Math.floor(interval) + 'mo ago';
|
|
135
142
|
interval = seconds / 86400;
|
|
136
143
|
if (interval > 1)
|
|
137
|
-
return Math.floor(interval) +
|
|
144
|
+
return Math.floor(interval) + 'd ago';
|
|
138
145
|
interval = seconds / 3600;
|
|
139
146
|
if (interval > 1)
|
|
140
|
-
return Math.floor(interval) +
|
|
147
|
+
return Math.floor(interval) + 'h ago';
|
|
141
148
|
interval = seconds / 60;
|
|
142
149
|
if (interval > 1)
|
|
143
|
-
return Math.floor(interval) +
|
|
144
|
-
return Math.floor(seconds) +
|
|
150
|
+
return Math.floor(interval) + 'm ago';
|
|
151
|
+
return Math.floor(seconds) + 's ago';
|
|
145
152
|
}
|
|
146
153
|
getStatusClass(statusCode) {
|
|
147
154
|
if (statusCode >= 500)
|
|
@@ -154,11 +161,11 @@ let ViewService = class ViewService {
|
|
|
154
161
|
}
|
|
155
162
|
getMethodBadge(method) {
|
|
156
163
|
const badges = {
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
164
|
+
GET: 'bg-blue-100 text-blue-800',
|
|
165
|
+
POST: 'bg-green-100 text-green-800',
|
|
166
|
+
PUT: 'bg-orange-100 text-orange-800',
|
|
167
|
+
PATCH: 'bg-yellow-100 text-yellow-800',
|
|
168
|
+
DELETE: 'bg-red-100 text-red-800',
|
|
162
169
|
};
|
|
163
170
|
const classes = badges[method] || 'bg-gray-100 text-gray-800';
|
|
164
171
|
return `<span class="px-2 inline-flex text-xs leading-5 font-semibold rounded-full ${classes}">${method}</span>`;
|
|
@@ -181,20 +188,20 @@ let ViewService = class ViewService {
|
|
|
181
188
|
}
|
|
182
189
|
getCacheOperationBadge(op) {
|
|
183
190
|
const badges = {
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
191
|
+
get: 'bg-blue-100 text-blue-800',
|
|
192
|
+
set: 'bg-purple-100 text-purple-800',
|
|
193
|
+
del: 'bg-red-100 text-red-800',
|
|
194
|
+
reset: 'bg-orange-100 text-orange-800',
|
|
188
195
|
};
|
|
189
196
|
const classes = badges[op] || 'bg-gray-100 text-gray-800';
|
|
190
197
|
return `<span class="px-2 inline-flex text-xs leading-5 font-semibold rounded-full uppercase ${classes}">${op}</span>`;
|
|
191
198
|
}
|
|
192
199
|
getCacheResultBadge(result) {
|
|
193
200
|
const badges = {
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
201
|
+
hit: 'bg-green-100 text-green-800',
|
|
202
|
+
miss: 'bg-red-100 text-red-800',
|
|
203
|
+
success: 'bg-green-100 text-green-800',
|
|
204
|
+
fail: 'bg-red-100 text-red-800',
|
|
198
205
|
};
|
|
199
206
|
const classes = badges[result] || 'bg-gray-100 text-gray-800';
|
|
200
207
|
return `<span class="px-2 inline-flex text-xs leading-5 font-semibold rounded-full uppercase ${classes}">${result}</span>`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view.service.js","sourceRoot":"","sources":["../../../libs/nestjs-profiler/src/services/view.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA4C;AAC5C,uCAAyB;AACzB,2CAA6B;AAGtB,IAAM,WAAW,GAAjB,MAAM,WAAW;
|
|
1
|
+
{"version":3,"file":"view.service.js","sourceRoot":"","sources":["../../../libs/nestjs-profiler/src/services/view.service.ts"],"names":[],"mappings":"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"}
|