This cookbook configures the Papertrail remote_syslog2 agent. To configure rsyslog for use with Papertrail, check out the Papertrail documentation.
- RHEL 6 / CentOS 6
- RHEL 7 / CentOS 7
- Amazon Linux 2017.03
- Ubuntu 14.04
- Ubuntu 16.04
- Debian 9
This cookbook has been tested on Chef 13.x and 12.21.x.
- Set the attributes
node['papertrail']['destination_host'],node['papertrail']['destination_port'], and at least one file/directory innode['papertrail']['files']. - Include
papertrailin your node'srun_list:
{
"run_list": [
"recipe[papertrail]"
]
}This will install remote_syslog2 with the configured settings from the Chef node attributes.
This cookbook only has one recipe, which does all setup and configuration. There are a number of attributes you can configure, all of which mirror the configuration items found in the remote_syslog2 README.
-
node['papertrail']['files']Type: Array
A list of files or patterns to send to Papertrail. At least one entry is required.
Example:
node['papertrail']['files'] = [ '/tmp/test.log', '/srv/foo.txt', '/var/log/*.bar' ]
To tag a file/path, the structure is slightly different:
node['papertrail']['files'] = [ '/tmp/test.log', '/srv/foo.txt', {'path' => '/srv/foo.txt', 'tag' => 'my_tag'} ]
-
node['papertrail']['exclude_files']Type: Array
A list of files or patterns to exclude.
Example:
node['papertrail']['exclude_files'] = [ '/tmp/exlude.log', '/srv/dont-include.log', '/var/log/skip-me.log' ]
-
node['papertrail']['exclude_patterns']Type: Array
A regex of log message patterns to exclude.
Example:
node['papertrail']['exclude_patterns'] = ['\d+ things']
-
node['papertrail']['hostname']Type: String
Override the default hostname.
Example:
node['papertrail']['hostname'] = 'my-super-awesome-hostname'
-
node['papertrail']['destination_host'],node['papertrail']['destination_port'], &node['papertrail']['destination_protocol']Type: String (
destination_host&destination_protocol) Type: Integer (destination_port)The Papertrail host and port to send logs to, and the protocol to use. These are required. Destination and port default to empty, while Protocol defaults to
tls.Example:
node['papertrail']['destination_host'] = 'logsN.papertrailapp.com' node['papertrail']['destination_port'] = XXXXX node['papertrail']['destination_protocol'] = 'tls'
-
node['papertrail']['new_file_check_interval']Type: Integer
Overrides the default file check interval.
Example:
node['papertrail']['new_file_check_interval'] = 30
-
node['papertrail']['severity']Overrides the default
remote_syslog2severity level.Example:
node['papertrail']['severity'] = 'warn'
-
node['papertrail']['facility']Overrides the default
remote_syslog2facility.Example:
node['papertrail']['facility'] = 'local7'
-
node['papertrail']['version']Type: String
Use a different version of
remote_syslogthan the default. The default is specified inmap.jinja.Example:
node['papertrail']['version'] = '0.18'
See TESTING.md
See CONTRIBUTING.md
License: See LICENSE
Author: Mike Julian (@mjulian)