@atos6/serverless-utils
v0.0.1-beta
Published
This packages will help out with our lambdas, with shared code between then.
Downloads
3
Readme
serverless-utils
This packages will help out with our lambdas, with shared code between then.
Features
- Logger
| Parameter name | Description | | ---------------- | ------------ | | service | The service name which the logger is being reporting, it is useful when our lambda logger move to a centralized logger | | format | Default: 'json', will print the log as json format, available options are: ['json', 'plain']. Plain will print directly to the console as normal text |
Example:
import { Logger } from '@raise-sistemas/serverless-utils'
const logger = new Logger({ service: 'PAYMENTS' })
const transaction = {
id: '123'
}
logger.info(`Payment transaction create with ${transaction.id}`)
The logger above will print as json (as defined by default) as:
{
"service": "PAYMENTS",
"message": "Payment transaction create with 123",
"data": {}
}
Or if the plain format is choosen:
[PAYMENTS]: 'Payment transaction create with 123'
The last data
field on json format is filled if instead of passing the above
logger.info
, passing an additional parameters to the logger, see below:
logger.info(`Payment transaction create with ${transaction.id}`, transaction)
PS: Might be useful to debug and see what kind of data raises a logger message.
{
"service": "PAYMENTS",
"message": "Payment transaction create with 123",
"data": {
"id": "123"
}
}
The log levels defined are: 'info', 'warn', 'error' and 'debug'
logger.info(`Payment transaction create with ${transaction.id}`, transaction)
logger.warn(`Payment transaction create with ${transaction.id}`, transaction)
logger.error(`Payment transaction create with ${transaction.id}`, transaction)
logger.debug(`Payment transaction create with ${transaction.id}`, transaction)
- Response
This has an only one function for now called create
:
import { Response } from '@raise-sistemas/serverless-utils'
Response.create(422, { 'error': 'payment_transaction_invalid' })
It's useful with aws lambda response to finish a call through API Gateway