Logger
We integrated with consola for better logging experience.
Usage
You can you log anything inside routers and services everywhere in your application with different types.
Available types: silent
, fatal
, error
, warn
, log
, info
, success
, fail
, ready
, start
, box
, debug
, trace
, verbose
.
Routers
Each router provides log
function in context.
ts
import { createRouter, } from 'nixle';
const usersRouter = createRouter('/users', ({ route, log }) => [
route.get('/', () => {
log.debug('Some log for debug');
return [];
}),
]);
Services
Each service provides log
function in context.
ts
import { createService } from 'nixle';
const usersService = createService('users', ({ log }) => {
const getUsers = () => {
log.debug('Some log for debug'});
return [];
};
return { getUsers };
});
Configuration
For more information about configuration, please visit consola repository.
ts
interface ConsolaOptions {
reporters: ConsolaReporter[];
types: Record<LogType, InputLogObject>;
level: LogLevel;
defaults: InputLogObject;
throttle: number;
throttleMin: number;
stdout?: NodeJS.WriteStream;
stderr?: NodeJS.WriteStream;
mockFn?: (type: LogType, defaults: InputLogObject) => (...args: any) => void;
prompt?: typeof prompt | undefined;
formatOptions: FormatOptions;
}
Setup
ts
import { createApp } from 'nixle';
import { someProvider } from '@nixle/some-provider';
const { app } = createApp({
provider: someProvider(),
logger: {
// Any consola options
},
router: [someRouter],
});