Serverless Plugin to enable log delivery from cloudwatch to sumologic via a lambda function and log group subscriptions

Usage no npm install needed!

<script type="module">
  import serverlessPluginCloudwatchSumologic from '';


serverless-plugin-cloudwatch-sumologic Build Status

Plugin which auto-subscribes a log delivery lambda function to lambda log groups created by Serverless


npm install --save-dev serverless-plugin-cloudwatch-sumologic


  1. First follow this guide to create a new collector and http source on Sumologic.
  2. Add the following custom variables to your serverless.yml file.
        # 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

How it works

This plugin automates the process described in the readme provided by Sumologic.

Upon running sls deploy it will...

  1. if no existing cloudwatch function is specified
    1. Create a temporary function in the root of your serverless project
    2. Add that function to the in-memory CloudFormation script created by the serverless framework
  2. Iterate through all the functions (except for the sumologic one) and generate:
    1. CloudFormation Subscription Filter resources linking the log groups created by serverless framework to the sumologic lambda function.
  3. 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


Daniel Parker (@rlgod)