Forge Home

sumo

Install and manage the Sumo Logic collector and its log sources.

16,990 downloads

10,743 latest version

5.0 quality score

We run a couple of automated
scans to help you access a
module's quality. Each module is
given a score based on how well
the author has formatted their
code and documentation and
modules are also checked for
malware using VirusTotal.

Please note, the information below
is for guidance only and neither of
these methods should be considered
an endorsement by Puppet.

Version information

  • 1.4.2 (latest)
  • 1.4.0
  • 1.3.3
  • 1.3.2
  • 1.1.0
  • 0.1.2
  • 0.1.1
released Feb 8th 2019
This version is compatible with:
  • Puppet Enterprise 2019.8.x, 2019.7.x, 2019.5.x, 2019.4.x, 2019.3.x, 2019.2.x, 2019.1.x, 2019.0.x, 2018.1.x
  • Puppet >= 5.5.10 < 7.0.0
  • , , , , Debian

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'pjorg-sumo', '1.4.2'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add pjorg-sumo
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install pjorg-sumo --version 1.4.2

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.

Download
Tags: logs, sumologic

Documentation

pjorg/sumo — version 1.4.2 Feb 8th 2019

pjorg-puppet-sumo

Table of Contents

  1. Overview
  2. Module Description
  3. Setup
  4. Development

Overview

This module installs and configures the Sumo Logic collector agent on a node, and also places source configuration under Puppet management. It also is designed to work with existing package managment rather than relying on downloading binaries directly from the Sumo Logic service and running the installer.

Module Description

The Sumo Logic collector is a small agent that is installed on hosts that facilitates the ingestion of log data into the Sumo Logic service.

There are a number of ways to install this agent. This module is intended for use cases where native package management solutions are preferred over running an installer. Initial support is limited to the RedHat OS family, which uses RPM packages.

Additionally, there is support for managing log sources within a node's manifest. This may be useful for ensuring that all nodes of a specific class always have certain log files collected.

Setup

What sumo affects

  • Installs the SumoCollector package via yum
  • Creates the sumo.conf file to allow for initial collector setup
  • Creates a source sync directory and manages JSON files within it, which controls a collector's active log sources (this disables source management from within the Sumo Logic UI)

Beginning with sumo

Before starting, you must make the collector RPM available to your hosts' package management. For RedHat-family operating systems, this means that yum install SumoCollector should work. If it does not, this module will not function.

After that, a basic collector instance can be installed and configured by including the sumo class in a node's manifest, and passing credentials to be used to attach the collector to your Sumo Logic account.

A basic example, using username/password and without any sources:

node mynode.lab.local {
  class { 'sumo':
    email    => 'user@example.com',
    password => 'usersPassword123!', 
  }
}

Second basic example, using username/password with single source json file:

node mynode.lab.local {
  class { 'sumo':
    email                     => 'user@example.com',
    password                  => 'usersPassword123!', 
    syncsourceswithsinglejson => '/path/to/file.json', 
  }
}

A more advanced example, using a Sumo accessid and with a local file source:

node mynode.lab.local {
  class { 'sumo':
    accessid  => 'SumoAccessId',
    accesskey => 'SumoAccessKey_123ABC/&!',
  }

  sumo::localfilesource { 'messages':
    sourcename     => 'message_log'
    pathexpression => '/var/log/messages',
  }
}

Development

Contributions expanding the module to use other portions of the Sumo Logic API and/or extending support to other platforms are welcome.

Development targets the latest releases of Puppet versions 5 and 6. See .travis.yml for an exact matrix.