Skip to main content

sumologic-mongodb-atlas

Solution to pull alerts from Mongo DB Atlas to Sumo Logic

Installation

This collector can be deployed both onprem and on cloud.

Deploying the collector on a VM

  1. Get Authentication information from the MongoDB Atlas portal

    • Generate Programmatic API Keys with Project owner permissions using the instructions in the Atlas docs. Copy the Public Key and Private Key. These serve the same function as a username and API Key respectively. Note: If you want to use the AWS Lambda function for collection, do not Select Add Whitelist Entry.

    • Go to your project and then click on settings. Copy the project ID as shown below:

    • Go to your organization by using context drop down at the top. Then click on settings and copy the organization ID.

  2. Add a Hosted Collector and one HTTP Logs and Metrics Source

    • To create a new Sumo Logic Hosted Collector, perform the steps in Configure a Hosted Collector.
    • Add an HTTP Logs and Metrics Source. Under Advanced you'll see options regarding timestamps and time zones and when you select Timestamp parsing specify the custom time stamp format as shown below:
      • Format: yyyy-MM-dd'T'HH:mm:ss.SSS'Z'
      • Timestamp locator: \"created\": (.*),.
    • Add another HTTP Source this time for metric
  3. Method 1 - Configuring the sumologic-mongodbatlas collector

    Below instructions assume pip is already installed if not then, see the pip docs on how to download and install pip. sumologic-mongodbatlas is compatible with python 3.7 and python 2.7. It has been tested on Ubuntu 18.04 LTS and Debian 4.9.130. Login to a Linux machine and download and follow the below steps:

    • Install the collector using below command pip install sumologic-mongodbatlas

    • Create a configuration file named mongodbatlas.yaml in home directory by copying the below snippet.

        SumoLogic:
         HTTP_LOGS_ENDPOINT: <Paste the URL for the HTTP Logs source from step 2.>
         HTTP_METRICS_ENDPOINT: <Paste the URL for the HTTP Metrics source from step 2.>
    
        MongoDBAtlas:
         ORGANIZATION_ID: Paste the Organization ID from step 1.
         PROJECT_ID: Paste the Project ID from step 1.
         PRIVATE_API_KEY: Paste the Private Key from step 1.
         PUBLIC_API_KEY: Paste the Public Key from step 1.
    
    • Create a cron job for running the collector every 5 minutes by using the crontab -e and adding the below line

      */5 * * * * /usr/bin/python -m sumomongodbatlascollector.main > /dev/null 2>&1

    Method 2 - Collection via an AWS Lambda function To install Sumo Logic’s AWS Lambda script, follow the instructions below:

    • Go to https://serverlessrepo.aws.amazon.com/applications Search for “sumologic-mongodb-atlas” and select the app as shown below:

    • When the page for the Sumo app appears as shown below, click the Deploy button as shown below:

    • In the Configure application parameters panel, shown below:

      • HTTPLogsEndpoint: Paste the URL for the HTTP Logs source from step 2.
      • HTTPMetricsEndpoint: Paste the URL for the HTTP Metrics source from step 2.
      • OrganizationID: Paste the Organization ID from step 1.
      • ProjectID: Paste the Project ID from step 1.
      • Private API Key: Paste the Private Key from step 1.
      • Public API Key: Paste the Public Key from step 1.
    • Click Deploy.

    • Whitelisting Lambda's IP Address

      • Search for Lambda in the AWS console, select Functions tab and open the function just created.
      • Go to the Configuration>Permissions tab of the function>click on the Execution role name link to open up the IAM window containing all the permission policies.
      • Click on Add permissions>Create inline policy. Choose JSON and copy this policy statement:
      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:DescribeNetworkInterfaces", "ec2:CreateNetworkInterface", "ec2:DeleteNetworkInterface", "ec2:DescribeInstances", "ec2:AttachNetworkInterface" ], "Resource": "*" } ] }
      

      Click on Review policy>give an appropriate name>click on Create policy. Some users might already have these permissions enabled.

      • We then follow these steps to create elastic ip/ips for the lambda function and add a vpc to our function. We note down the elastic ips.
      • We go to the mongo console>click on Organization Access>Access Manager>API Keys>click on ‘...’ of the API Key used above>Edit Permissions.
      • Click Next>Add Access List Entry>Enter the elastic ips noted above and save>Done.
      • The lambda function should be working now in sending logs to Sumo. You can check the cloudwatch logs in Monitor>Logs to see the logs of the function.

Release files for sumologic-mongodb-atlas 1.0.11

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for sumologic-mongodb-atlas 1.0.11
File Size Uploaded
sumologic_mongodb_atlas-1.0.11.tar.gz 20.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for sumologic-mongodb-atlas 1.0.11
File Interpreter ABI Platform
sumologic_mongodb_atlas-1.0.11-py3-none-any.whl Python 3 none any Details

Total release size: 42.7 kB

Release files / sumologic_mongodb_atlas-1.0.11.tar.gz

Download URL sumologic_mongodb_atlas-1.0.11.tar.gz
Size 20.6 kB
Tags Source
SHA-256 checksum
How to use checksums
fc2e49bed181ced073154f223c15542d3cdfa8c77833950d411fb7065c424341
BLAKE2b-256 checksum
How to use checksums
63889d016439c458d8501ed9f8a1eedeeb4f440bab18c21ff377047bd250ba03
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.0

Release files / sumologic_mongodb_atlas-1.0.11-py3-none-any.whl

Download URL sumologic_mongodb_atlas-1.0.11-py3-none-any.whl
Size 22.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2749d78f525df7b662ce2071eee2c1256be589769c86db17ff2236fbe365e009
BLAKE2b-256 checksum
How to use checksums
003b27b63f2cb30b747c93085f6eb2a85b9e22e12f5e5d808dd4fa2aed11e0a6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.0

Release history Release notifications | RSS feed

This release

1.0.11 This release

2 release files

1.0.10

2 release files

1.0.9

2 release files

1.0.8

2 release files

1.0.7

2 release files

1.0.6

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page