@viplance/nestjs-logger 0.3.2 → 0.3.4

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
@@ -29,8 +29,7 @@
29
29
  });
30
30
  ```
31
31
 
32
- Connect the database to store logs.
33
-
32
+ Connect the database to store logs.<br />
34
33
  ```typescript
35
34
  await LogModule.init(app, {
36
35
  ...,
@@ -51,7 +50,7 @@ Connect the database to store logs.
51
50
 
52
51
  this.logService.log('Some log information');
53
52
  ```
54
-
53
+ <br />
55
54
 
56
55
  ### Additional information
57
56
 
@@ -59,7 +58,7 @@ Connect the database to store logs.
59
58
  - The logs could be available at `your_application_url`/`path`?key=`key`
60
59
  - The log API could be available at `your_application_url`/`path`/api?key=`key`
61
60
  - By default the logs will be stored in memory and deleted when the application stops.<br />
62
-
61
+ <br />
63
62
 
64
63
  ### The LogService methods:
65
64
  - log()
@@ -129,25 +129,25 @@ let LogService = LogService_1 = class LogService {
129
129
  const res = {};
130
130
  const args = context.getArgs();
131
131
  for (const arg of args) {
132
- if (arg.rawHeaders) {
133
- res.rawHeaders = {};
134
- const len = arg.rawHeaders.length - 1;
135
- for (let i = 0; i < len; i += 2) {
136
- res.rawHeaders[arg.rawHeaders[i]] = arg.rawHeaders[i + 1];
137
- }
132
+ if (arg.method) {
133
+ res.method = arg.method;
138
134
  }
139
135
  if (arg.url) {
140
136
  res.url = arg.url;
141
137
  }
142
- if (arg.method) {
143
- res.method = arg.method;
144
- }
145
138
  if (arg.params) {
146
139
  res.params = arg.params;
147
140
  }
148
141
  if (arg.body) {
149
142
  res.body = arg.body;
150
143
  }
144
+ if (arg.rawHeaders) {
145
+ res.rawHeaders = {};
146
+ const len = arg.rawHeaders.length - 1;
147
+ for (let i = 0; i < len; i += 2) {
148
+ res.rawHeaders[arg.rawHeaders[i]] = arg.rawHeaders[i + 1];
149
+ }
150
+ }
151
151
  }
152
152
  return res;
153
153
  }
@@ -1 +1 @@
1
- {"version":3,"file":"log.service.js","sourceRoot":"","sources":["../../src/services/log.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"log.service.js","sourceRoot":"","sources":["../../src/services/log.service.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@viplance/nestjs-logger",
3
- "version": "0.3.2",
3
+ "version": "0.3.4",
4
4
  "description": "NestJS internal logging system",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
package/public/index.html CHANGED
@@ -26,24 +26,32 @@
26
26
  </head>
27
27
  <body>
28
28
  <header>
29
- <div class="content container">
30
- <div class="logo">
31
- <img src="favicon.ico" alt="Logger" />
32
- <h2>NestJS logging system</h2>
33
- </div>
34
- <nav>
35
- <ul>
36
- <li class="all active" data-selector="all">All</a></li>
37
- <li class="log" data-selector="log">Log</a></li>
38
- <li class="error" data-selector="error">Error</li>
39
- <li class="warn" data-selector="warn">Warning</li>
40
- <li class="debug" data-selector="debug">Debug</li>
41
- <li class="verbose" data-selector="verbose">Verbose</li>
42
- </ul>
43
- </nav>
44
- <div onclick="getLogs()"><button class="white">Refresh</button></div>
29
+ <div class="container controls content">
30
+ <div class="logo">
31
+ <img src="favicon.ico" alt="Logger" />
32
+ <h2>NestJS logging system</h2>
33
+ </div>
34
+ <nav>
35
+ <ul>
36
+ <li class="all active" data-selector="all">All</a></li>
37
+ <li class="log" data-selector="log">Log</a></li>
38
+ <li class="error" data-selector="error">Error</li>
39
+ <li class="warn" data-selector="warn">Warning</li>
40
+ <li class="debug" data-selector="debug">Debug</li>
41
+ <li class="verbose" data-selector="verbose">Verbose</li>
42
+ </ul>
43
+ </nav>
44
+ <div onclick="getLogs()"><button class="white">Refresh</button></div>
45
+ </div>
46
+ <div class="container table-header">
47
+ <div class="col">Type</div>
48
+ <div class="col">Info</div>
49
+ <div class="col">Trace</div>
50
+ <div class="col">Count</div>
45
51
  </div>
46
52
  </header>
53
+
54
+ <div id="no-logs" class="content container center"><h3>No logs</h3></div>
47
55
 
48
56
  <div class="container mt-3">
49
57
  <section id="logs"></section>
@@ -141,12 +141,17 @@ async function getLogs() {
141
141
  return selectedLogTypes["all"] || selectedLogTypes[log.type];
142
142
  });
143
143
 
144
- let html = `<div class="header">
145
- <div class="col">Type</div>
146
- <div class="col">Info</div>
147
- <div class="col">Trace</div>
148
- <div class="col">Count</div>
149
- </div>`;
144
+ if (logs.length === 0) {
145
+ document.getElementById("no-logs").style.display = "block";
146
+ document.querySelector(".table-header").style.display = "none";
147
+ document.querySelector("nav").style.display = "none";
148
+ } else {
149
+ document.getElementById("no-logs").style.display = "none";
150
+ document.querySelector(".table-header").style.display = "flex";
151
+ document.querySelector("nav").style.display = "flex";
152
+ }
153
+
154
+ let html = "";
150
155
 
151
156
  logs.forEach((log) => {
152
157
  html += getLogHtmlElement(log);
@@ -1,6 +1,6 @@
1
1
  function showLogDetails(log) {
2
2
  const popup = document.getElementById(`popup`);
3
- console.log(log.context);
3
+
4
4
  popup.innerHTML = `
5
5
  <div class="content center">
6
6
  <div class="container mt-2">
@@ -10,7 +10,7 @@ function showLogDetails(log) {
10
10
  log.trace
11
11
  ? `
12
12
  <h3 class="mt-2">Trace</h3>
13
- <p class="pl-2">${log.trace}</p>
13
+ <p class="key pl-2"><span>${getTrace(log.trace)}</span></p>
14
14
  `
15
15
  : ""
16
16
  }
@@ -25,9 +25,14 @@ function showLogDetails(log) {
25
25
  <button class="white mt-2" onclick="closePopup()">Close</button>
26
26
  </div>
27
27
  <div>`;
28
+
28
29
  popup.style.display = "block";
29
30
  }
30
31
 
32
+ function getTrace(trace) {
33
+ return trace.replace(new RegExp(String.fromCharCode(10), "g"), "<br />");
34
+ }
35
+
31
36
  function closePopup() {
32
37
  const popup = document.getElementById(`popup`);
33
38
  popup.style.display = "none";
@@ -15,7 +15,7 @@ function jsonViewer(json, parentKey) {
15
15
  if (typeof json[key] === "object") {
16
16
  res += jsonViewer(json[key], key);
17
17
  } else {
18
- res += `<div class="pl-2">${key}: ${json[key]}</div>`;
18
+ res += `<div class="key pl-2">${key}: <span>${json[key]}</span></div>`;
19
19
  }
20
20
  }
21
21
 
@@ -10,10 +10,6 @@ body {
10
10
  position: relative;
11
11
  }
12
12
 
13
- body:nth-child(2) {
14
- margin-top: 4rem;
15
- }
16
-
17
13
  h1 {
18
14
  font-size: 2.5rem;
19
15
  font-weight: 400;
@@ -56,16 +52,17 @@ h3 {
56
52
  max-width: 1600px;
57
53
  }
58
54
 
59
- @media (max-width: 1620px) {
60
- .container {
61
- padding: 0 2rem;
62
- }
55
+ #logs {
56
+ margin-top: 4rem;
63
57
  }
64
58
 
65
- .shadow {
66
- box-shadow: 0.5rem 0.5rem 1.5rem 0.2rem #ddd;
59
+ #no-logs {
60
+ display: none;
61
+ margin-top: 6rem;
62
+ text-align: center;
67
63
  }
68
64
 
65
+ /* buttons */
69
66
  button {
70
67
  display: flex;
71
68
  justify-content: space-between;
@@ -106,31 +103,41 @@ button.white {
106
103
 
107
104
  /* header */
108
105
  header {
109
- padding-top: 1rem;
110
- box-sizing: border-box;
111
106
  display: flex;
112
- flex-direction: row;
113
- justify-content: center;
107
+ align-items: center;
108
+ box-sizing: border-box;
109
+ flex-direction: column;
114
110
  position: fixed !important;
115
111
  top: 0;
116
112
  background: var(--white);
113
+ padding-top: 1rem;
117
114
  z-index: 1;
118
115
  width: 100%;
119
116
  }
120
117
 
121
- header .logo {
118
+ .controls {
119
+ display: flex;
120
+ justify-content: space-between;
121
+ flex-direction: row;
122
+ }
123
+
124
+ .controls .logo {
122
125
  display: flex;
123
126
  align-items: center;
124
127
  justify-items: left;
125
128
  opacity: 0.8;
126
129
  }
127
130
 
128
- header .logo img {
131
+ .controls .logo img {
129
132
  height: 3rem;
130
133
  width: 3rem;
131
134
  margin-right: 1rem;
132
135
  }
133
136
 
137
+ nav {
138
+ display: none;
139
+ }
140
+
134
141
  nav ul {
135
142
  display: flex;
136
143
  justify-content: space-evenly;
@@ -169,53 +176,57 @@ nav ul li:hover {
169
176
  }
170
177
 
171
178
  /* table */
172
- .header,
179
+ .table-header,
173
180
  .row {
174
181
  display: flex;
175
182
  gap: 1rem;
183
+ flex-direction: row;
176
184
  row-gap: 1rem;
177
185
  align-items: center;
178
186
  justify-content: space-around;
179
187
  }
180
188
 
181
- .header {
189
+ .table-header {
190
+ display: none;
182
191
  height: 2rem;
183
192
  background-color: var(--dark);
184
193
  color: var(--white);
194
+ margin-top: 0.5rem;
185
195
  }
186
196
 
187
- .header .col,
197
+ .table-header .col,
188
198
  .row > :last-child {
189
199
  text-align: center;
190
200
  }
191
-
192
- .header > :first-child,
201
+ .table-header > :first-child,
193
202
  .row > :first-child {
194
203
  flex: 0 0 5rem;
195
204
  text-align: center;
196
205
  }
197
- .header > :nth-child(2),
206
+
207
+ .table-header > :nth-child(2),
198
208
  .row > :nth-child(2) {
199
209
  flex: 0 0 20rem;
200
210
  }
201
- .header > :nth-child(3),
211
+ .table-header > :nth-child(3),
202
212
  .row > :nth-child(3) {
203
213
  flex: 1 1 auto;
204
214
  }
205
- div.header > :last-child,
215
+ .table-header > :last-child,
206
216
  .row > :last-child {
207
217
  flex: 0 0 5rem;
208
218
  }
209
219
 
210
220
  .row {
211
221
  height: 3rem;
212
- opacity: 0.8;
213
222
  font-weight: 100;
214
223
  cursor: pointer;
224
+ border-left: 2px solid transparent;
215
225
  }
216
226
 
217
227
  .row:hover {
218
- opacity: 1;
228
+ border-left: 2px solid;
229
+ border-left-color: var(--dark);
219
230
  }
220
231
 
221
232
  .row:nth-child(odd) {
@@ -266,13 +277,32 @@ div.header > :last-child,
266
277
  #popup {
267
278
  position: fixed;
268
279
  display: none;
269
- background-color: var(--white);
280
+ box-sizing: border-box;
281
+ padding: 2rem;
282
+ background-color: rgba(255, 255, 255, 0.95);
283
+ backdrop-filter: blur(5px);
284
+ border: 1px solid var(--light);
270
285
  top: 0;
271
- left: 0;
272
- width: 100%;
286
+ left: 30%;
287
+ width: 50%;
273
288
  height: 100%;
274
289
  overflow-y: scroll;
275
290
  z-index: 1;
291
+ opacity: 0.95;
276
292
  }
277
293
 
278
294
  /* JSON viewer */
295
+ .key span {
296
+ color: var(--dark);
297
+ }
298
+
299
+ @media (max-width: 1620px) {
300
+ .container {
301
+ padding: 0 2rem;
302
+ }
303
+
304
+ #popup {
305
+ width: 100%;
306
+ left: 0;
307
+ }
308
+ }
@@ -155,23 +155,14 @@ export class LogService implements LoggerService {
155
155
  const args = context.getArgs();
156
156
 
157
157
  for (const arg of args) {
158
- if (arg.rawHeaders) {
159
- res.rawHeaders = {};
160
- const len = arg.rawHeaders.length - 1;
161
-
162
- for (let i = 0; i < len; i += 2) {
163
- res.rawHeaders[arg.rawHeaders[i]] = arg.rawHeaders[i + 1];
164
- }
158
+ if (arg.method) {
159
+ res.method = arg.method;
165
160
  }
166
161
 
167
162
  if (arg.url) {
168
163
  res.url = arg.url;
169
164
  }
170
165
 
171
- if (arg.method) {
172
- res.method = arg.method;
173
- }
174
-
175
166
  if (arg.params) {
176
167
  res.params = arg.params;
177
168
  }
@@ -179,6 +170,15 @@ export class LogService implements LoggerService {
179
170
  if (arg.body) {
180
171
  res.body = arg.body;
181
172
  }
173
+
174
+ if (arg.rawHeaders) {
175
+ res.rawHeaders = {};
176
+ const len = arg.rawHeaders.length - 1;
177
+
178
+ for (let i = 0; i < len; i += 2) {
179
+ res.rawHeaders[arg.rawHeaders[i]] = arg.rawHeaders[i + 1];
180
+ }
181
+ }
182
182
  }
183
183
 
184
184
  return res;