@cichol/logger 4.2.2 → 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
@@ -28,7 +28,7 @@ $ npm install --save @cichol/logger
28
28
 
29
29
  [MIT Licensed](../../LICENSE).
30
30
 
31
- [github actions badge]: https://img.shields.io/github/workflow/status/morrighan/packages/On%20default/develop?style=flat-square
31
+ [github actions badge]: https://img.shields.io/github/actions/workflow/status/morrighan/packages/default.yml?branch=develop&style=flat-square
32
32
  [github actions]: https://github.com/morrighan/packages/actions
33
33
  [license badge]: https://img.shields.io/github/license/morrighan/packages.svg?style=flat-square
34
34
  [npm package version badge]: https://img.shields.io/npm/v/@cichol/logger.svg?style=flat-square
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cichol/logger",
3
- "version": "4.2.2",
3
+ "version": "4.3.1",
4
4
  "description": "A logger based on `winston` for personal projects.",
5
5
  "homepage": "https://github.com/morrighan/packages",
6
6
  "bugs": {
@@ -46,7 +46,7 @@
46
46
  "winston": "^3.14.2"
47
47
  },
48
48
  "engines": {
49
- "node": "^20.13.1",
49
+ "node": "^20.16.0",
50
50
  "npm": "^10.8.0"
51
51
  },
52
52
  "publishConfig": {
@@ -0,0 +1,32 @@
1
+ import 'reflect-metadata';
2
+ import { IncomingMessage as HttpRequest, ServerResponse as HttpResponse } from 'http';
3
+ import Promise from 'bluebird';
4
+ import type { LoggingLevelName } from '../handlers';
5
+ declare class Logger {
6
+ #private;
7
+ private constructor();
8
+ static get instance(): Logger;
9
+ /**
10
+ * Logging message with specific level.
11
+ *
12
+ * @param level
13
+ * @param message
14
+ * @param args Additional metadata.
15
+ */
16
+ log(level: LoggingLevelName, message: string, ...args: any[]): void;
17
+ /**
18
+ * Logging HTTP I/O.
19
+ *
20
+ * @param request Node.js built-in `IncomingMessage` instance from `http` module.
21
+ * @param response Node.js built-in `ServerResponse` instance from `http` module.
22
+ */
23
+ log(request: HttpRequest, response: HttpResponse): Promise<void>;
24
+ /**
25
+ * Logging errors in detail.
26
+ *
27
+ * @param error
28
+ */
29
+ log(error: Error): void;
30
+ }
31
+ declare const _default: Logger;
32
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const _default: import("logform").Format;
2
+ export default _default;
@@ -0,0 +1,7 @@
1
+ import { IncomingMessage as HttpRequest, ServerResponse as HttpResponse } from 'http';
2
+ import morgan from 'morgan';
3
+ declare module 'morgan' {
4
+ const combined: morgan.FormatFn;
5
+ }
6
+ declare const _default: morgan.FormatFn<HttpRequest, HttpResponse<HttpRequest>>;
7
+ export default _default;
@@ -0,0 +1,5 @@
1
+ export declare const name = "debug";
2
+ export declare const level: 5;
3
+ export declare const label: "DEBUG";
4
+ declare const _default: null;
5
+ export default _default;
@@ -0,0 +1,13 @@
1
+ type LoggingData = {
2
+ level: string;
3
+ message: string;
4
+ } & Record<PropertyKey, any>;
5
+ type HandledData = {
6
+ label: string;
7
+ payload: string;
8
+ };
9
+ export declare const name = "error";
10
+ export declare const level: 1;
11
+ export declare const label: "ERROR";
12
+ export default function handle(data: LoggingData): HandledData | undefined;
13
+ export {};
@@ -0,0 +1,4 @@
1
+ export declare const name = "fatal";
2
+ export declare const level: 0;
3
+ export declare const label: "FATAL";
4
+ export { default } from './error';
@@ -0,0 +1,5 @@
1
+ export declare const name = "http";
2
+ export declare const level: 4;
3
+ export declare const label: "HTTP";
4
+ declare const _default: null;
5
+ export default _default;
@@ -0,0 +1,12 @@
1
+ import * as FatalHandler from './fatal';
2
+ import * as ErrorHandler from './error';
3
+ import * as WarningHandler from './warning';
4
+ import * as NoticeHandler from './notice';
5
+ import * as InfoHandler from './info';
6
+ import * as HttpHandler from './http';
7
+ import * as QueryHandler from './query';
8
+ import * as VerboseHandler from './verbose';
9
+ import * as DebugHandler from './debug';
10
+ declare const handlers: (typeof FatalHandler | typeof ErrorHandler | typeof WarningHandler | typeof NoticeHandler | typeof InfoHandler | typeof HttpHandler | typeof QueryHandler | typeof VerboseHandler | typeof DebugHandler)[];
11
+ export type LoggingLevelName = (typeof handlers extends (infer T)[] ? T : never)['name'];
12
+ export default handlers;
@@ -0,0 +1,5 @@
1
+ export declare const name = "info";
2
+ export declare const level: 3;
3
+ export declare const label: "INFO";
4
+ declare const _default: null;
5
+ export default _default;
@@ -0,0 +1,5 @@
1
+ export declare const name = "notice";
2
+ export declare const level: 3;
3
+ export declare const label: "NOTICE";
4
+ declare const _default: null;
5
+ export default _default;
@@ -0,0 +1,13 @@
1
+ type LoggingData = {
2
+ level: string;
3
+ message: string;
4
+ } & Record<PropertyKey, any>;
5
+ type HandledData = {
6
+ label: string;
7
+ payload: string;
8
+ };
9
+ export declare const name = "query";
10
+ export declare const level: 4;
11
+ export declare const label: "QUERY";
12
+ export default function handle(data: LoggingData): HandledData | undefined;
13
+ export {};
@@ -0,0 +1,5 @@
1
+ export declare const name = "verbose";
2
+ export declare const level: 5;
3
+ export declare const label: "VERBOSE";
4
+ declare const _default: null;
5
+ export default _default;
@@ -0,0 +1,5 @@
1
+ export declare const name = "warning";
2
+ export declare const level: 2;
3
+ export declare const label: "WARNING";
4
+ declare const _default: null;
5
+ export default _default;
@@ -0,0 +1,12 @@
1
+ import { type ChalkInstance } from 'chalk';
2
+ declare const ColorScheme: {
3
+ readonly Critical: number;
4
+ readonly Warning: number;
5
+ readonly Regular: number;
6
+ readonly Http: number;
7
+ readonly Query: number;
8
+ readonly Loud: number;
9
+ };
10
+ type ColorScheme = typeof ColorScheme[keyof typeof ColorScheme];
11
+ export declare function getChalkOf(colorSet: ColorScheme): ChalkInstance;
12
+ export default ColorScheme;
@@ -0,0 +1,18 @@
1
+ export declare const ExecutionMode: {
2
+ readonly DevelopmentMode: "development";
3
+ readonly ProductionMode: "production";
4
+ };
5
+ export declare const ClusteringMode: {
6
+ readonly MasterProcess: 0;
7
+ readonly WorkerProcess: 1;
8
+ };
9
+ export declare const ThreadingMode: {
10
+ readonly MainThread: 0;
11
+ readonly WorkerThread: 1;
12
+ };
13
+ export type ExecutionMode = typeof ExecutionMode[keyof typeof ExecutionMode];
14
+ export type ClusteringMode = typeof ClusteringMode[keyof typeof ClusteringMode];
15
+ export type ThreadingMode = typeof ThreadingMode[keyof typeof ThreadingMode];
16
+ export declare const executionMode: ExecutionMode;
17
+ export declare const clusteringMode: ClusteringMode;
18
+ export declare const threadingMode: ThreadingMode;
@@ -0,0 +1,2 @@
1
+ import ColorScheme from './color-scheme';
2
+ export default function decorateLabel<T extends string>(label: T, scheme: ColorScheme): T;
@@ -0,0 +1,13 @@
1
+ declare const LoggingLevel: {
2
+ readonly Fatal: 0;
3
+ readonly Error: 1;
4
+ readonly Warning: 2;
5
+ readonly Notice: 3;
6
+ readonly Info: 3;
7
+ readonly Http: 4;
8
+ readonly Query: 4;
9
+ readonly Verbose: 5;
10
+ readonly Debug: 5;
11
+ };
12
+ type LoggingLevel = typeof LoggingLevel[keyof typeof LoggingLevel];
13
+ export default LoggingLevel;
@@ -0,0 +1 @@
1
+ export { default } from './classes/logger';