Plugin which auto-subscribes a log delivery lambda function to lambda log groups created by Serverless
npm install --save-dev serverless-plugin-cloudwatch-sumologic
- First follow this guide to create a new collector and http source on Sumologic.
- Add the following custom variables to your
serverless.yml
file.
custom:
shipLogs:
# Required
arn: existing cloudwatch logs ARN
# OR
collectorUrl: Paste your url from step 1. here
# Optional, default pattern is "[timestamp=*Z, request_id=\"*-*\", event]"
filterPattern: "[timestamp=*Z, request_id=\"*-*\", correlation_id=\"*-*\", event]"
role: ARN of IAM role to use
This plugin automates the process described in the readme provided by Sumologic.
Upon running sls deploy
it will...
- if no existing cloudwatch function is specified
- Create a temporary function in the root of your serverless project
- Add that function to the in-memory CloudFormation script created by the serverless framework
- Iterate through all the functions (except for the sumologic one) and generate:
- CloudFormation Subscription Filter resources linking the log groups created by serverless framework to the sumologic lambda function.
- Wait for the stack creation/update to complete and then delete the temporarily created function source directory.
You must be running serverless 1.6.0 or higher.
Please fork this repo to make changes and then issue a pull request back to this repo. No unit tests are included at this time. Unit tests will be added before this goes into version 1.0.0