Code tools for shutter
npm install @councilbox/shutter-tools---
---
$ npm i @councilbox/shutter-tools
`
---$3
#### BASIC
`
import { Logger } from @councilbox/shutter-tools');const logger = Logger({
name: 'API',
level: 'debug',
pretty: true
});
`
---#### REDACT
`
import { Logger } from @councilbox/shutter-tools');const logger = Logger({
name: 'API',
level: 'debug',
pretty: true,
redact: {
paths: [
'variables.pwd',
'variables.password',
'variables.vote',
'variables.dni',
'variables.tin',
'variables.base64',
'variables.certificate',
'result.nif'
],
remove: true,
}
});
`#### GraphQL
`
import { LoggerGraphQL } from @councilbox/shutter-tools');const graphqlLogger = LoggerGraphQL({
name: 'API',
level: 'debug',
pretty: true,
graphqlConfig: {
excludedOperations: {
api: true
},
getUserId: (requestContext) => {
const user = requestContext.context.req.jwtSession;
return user.data ? user.data.id : null;
}
}
});
`
$3
#### BASIC
`
logger.info(Version: ${logger.loggerVersion});logger.debug('Hola');
logger.info('Hola');
logger.warn('Hola');
logger.error('Hola');
`
###### OUTPUT PRETTY

###### OUTPUT PLAIN

---
#### FORMATTED
`
const startTime = performance.now();
const debugLog = {
userId: '',
result: {
response: 'sample response'
},
startTime,
debug: true,
endTime: performance.now(),
type: 'testing_log',
};
logger.formatter(debugLog);const infoLog = {
userId: '',
result: {
response: 'sample response'
},
startTime,
endTime: performance.now(),
type: 'testing_log',
};
logger.formatter(infoLog);
const warnlog = {
userId: '',
result: {
response: 'sample response'
},
warn: true,
startTime,
endTime: performance.now(),
type: 'testing_log',
};
logger.formatter(warnlog);
const errorLog = {
userId: '',
result: {
error: 'Default error'
},
startTime,
endTime: performance.now(),
type: 'testing_log',
};
logger.formatter(errorLog);
const errorsLog = {
userId: '',
errors: ['Default error', 'Default error 2'],
startTime,
endTime: performance.now(),
type: 'testing_log',
};
logger.formatter(errorsLog);
`###### OUTPUT PRETTY

###### OUTPUT PLAIN

---
#### GraphQL
`
new ApolloServer({
...,
plugins: [graphqlLogger()],
...
});
``