[FUEL-286] Added syslog option
This commit is contained in:
parent
543f591788
commit
e4f045a630
76
deployment/puppet/cinder/files/logging.conf
Normal file
76
deployment/puppet/cinder/files/logging.conf
Normal file
@ -0,0 +1,76 @@
|
||||
[loggers]
|
||||
keys = root, cinder
|
||||
|
||||
[handlers]
|
||||
keys = stderr, stdout, watchedfile, syslog, null
|
||||
|
||||
[formatters]
|
||||
keys = legacycinder, default
|
||||
|
||||
[logger_root]
|
||||
level = WARNING
|
||||
handlers = null
|
||||
|
||||
[logger_cinder]
|
||||
level = DEBUG
|
||||
handlers = syslog
|
||||
qualname = cinder
|
||||
|
||||
[logger_amqplib]
|
||||
level = WARNING
|
||||
handlers = stderr
|
||||
qualname = amqplib
|
||||
|
||||
[logger_sqlalchemy]
|
||||
level = WARNING
|
||||
handlers = stderr
|
||||
qualname = sqlalchemy
|
||||
# "level = INFO" logs SQL queries.
|
||||
# "level = DEBUG" logs SQL queries and results.
|
||||
# "level = WARNING" logs neither. (Recommended for production systems.)
|
||||
|
||||
[logger_boto]
|
||||
level = WARNING
|
||||
handlers = stderr
|
||||
qualname = boto
|
||||
|
||||
[logger_suds]
|
||||
level = INFO
|
||||
handlers = stderr
|
||||
qualname = suds
|
||||
|
||||
[logger_eventletwsgi]
|
||||
level = WARNING
|
||||
handlers = stderr
|
||||
qualname = eventlet.wsgi.server
|
||||
|
||||
[handler_stderr]
|
||||
class = StreamHandler
|
||||
args = (sys.stderr,)
|
||||
formatter = legacycinder
|
||||
|
||||
[handler_stdout]
|
||||
class = StreamHandler
|
||||
args = (sys.stdout,)
|
||||
formatter = legacycinder
|
||||
|
||||
[handler_watchedfile]
|
||||
class = handlers.WatchedFileHandler
|
||||
args = ('cinder.log',)
|
||||
formatter = legacycinder
|
||||
|
||||
[handler_syslog]
|
||||
class = handlers.SysLogHandler
|
||||
args = ('/dev/log', handlers.SysLogHandler.LOG_LOCAL3)
|
||||
formatter = legacycinder
|
||||
|
||||
[handler_null]
|
||||
class = nova.openstack.common.log.NullHandler
|
||||
formatter = default
|
||||
args = ()
|
||||
|
||||
[formatter_legacycinder]
|
||||
class = nova.openstack.common.log.LegacyFormatter
|
||||
|
||||
[formatter_default]
|
||||
format = %(message)s
|
@ -13,7 +13,8 @@ class cinder::base (
|
||||
$rabbit_virtual_host = '/',
|
||||
$rabbit_userid = 'nova',
|
||||
$package_ensure = 'present',
|
||||
$verbose = 'True'
|
||||
$verbose = 'True',
|
||||
$use_syslog = false
|
||||
) {
|
||||
|
||||
include cinder::params
|
||||
@ -28,6 +29,15 @@ class cinder::base (
|
||||
ensure => $package_ensure,
|
||||
}
|
||||
|
||||
if $use_syslog {
|
||||
cinder_config {'DEFAULT/log_config': value => "/etc/cinder/logging.conf";}
|
||||
file { "cinder-logging.conf":
|
||||
source=>"puppet:///cinder/logging.conf",
|
||||
path => "/etc/cinder/logging.conf",
|
||||
owner => "cinder",
|
||||
group => "cinder",
|
||||
}
|
||||
}
|
||||
File {
|
||||
ensure => present,
|
||||
owner => 'cinder',
|
||||
|
48
deployment/puppet/glance/files/logging.conf
Normal file
48
deployment/puppet/glance/files/logging.conf
Normal file
@ -0,0 +1,48 @@
|
||||
[loggers]
|
||||
keys = root, glance
|
||||
|
||||
[handlers]
|
||||
keys = stderr, stdout, watchedfile, syslog, null
|
||||
|
||||
[formatters]
|
||||
keys = legacyglance, default
|
||||
|
||||
[logger_root]
|
||||
level = WARNING
|
||||
handlers = null
|
||||
|
||||
[logger_glance]
|
||||
level = DEBUG
|
||||
handlers = syslog
|
||||
qualname = glance
|
||||
|
||||
[handler_stderr]
|
||||
class = StreamHandler
|
||||
args = (sys.stderr,)
|
||||
formatter = legacyglance
|
||||
|
||||
[handler_stdout]
|
||||
class = StreamHandler
|
||||
args = (sys.stdout,)
|
||||
formatter = legacyglance
|
||||
|
||||
[handler_watchedfile]
|
||||
class = handlers.WatchedFileHandler
|
||||
args = ('/var/log/glance/glance.log',)
|
||||
formatter = legacyglance
|
||||
|
||||
[handler_syslog]
|
||||
class = handlers.SysLogHandler
|
||||
args = ('/dev/log', handlers.SysLogHandler.LOG_LOCAL2)
|
||||
formatter = legacyglance
|
||||
|
||||
[handler_null]
|
||||
class = glance.openstack.common.log.NullHandler
|
||||
formatter = default
|
||||
args = ()
|
||||
|
||||
[formatter_legacyglance]
|
||||
class = glance.openstack.common.log.LegacyFormatter
|
||||
|
||||
[formatter_default]
|
||||
format = %(message)s
|
@ -47,7 +47,8 @@ class glance::api(
|
||||
$keystone_user = 'admin',
|
||||
$enabled = true,
|
||||
$sql_idle_timeout = '3600',
|
||||
$sql_connection = 'sqlite:///var/lib/glance/glance.sqlite'
|
||||
$sql_connection = 'sqlite:///var/lib/glance/glance.sqlite',
|
||||
$use_syslog = false
|
||||
) inherits glance {
|
||||
|
||||
# used to configure concat
|
||||
@ -83,6 +84,12 @@ class glance::api(
|
||||
} else {
|
||||
fail("Invalid db connection ${sql_connection}")
|
||||
}
|
||||
|
||||
if $use_syslog
|
||||
{
|
||||
glance_api_config {'DEFAULT/log_config': value => "/etc/glance/logging.conf";}
|
||||
|
||||
}
|
||||
|
||||
# basic service config
|
||||
glance_api_config {
|
||||
|
@ -4,6 +4,8 @@ class glance(
|
||||
|
||||
include glance::params
|
||||
|
||||
|
||||
|
||||
file { '/etc/glance/':
|
||||
ensure => directory,
|
||||
owner => 'glance',
|
||||
@ -11,6 +13,13 @@ class glance(
|
||||
mode => '0770',
|
||||
require => Package['glance']
|
||||
}
|
||||
file {"glance-logging.conf":
|
||||
source=>"puppet:///glance/logging.conf",
|
||||
path => "/etc/glance/logging.conf",
|
||||
owner => "glance",
|
||||
group => "glance",
|
||||
require => [User['glance'],Group['glance'],File['/etc/glance/']]
|
||||
}
|
||||
group {'glance': gid=> 161, ensure=>present, system=>true}
|
||||
user {'glance': uid=> 161, ensure=>present, system=>true, gid=>"glance", require=>Group['glance']}
|
||||
User['glance'] -> Package['glance']
|
||||
|
@ -13,8 +13,15 @@ class glance::registry(
|
||||
$auth_protocol = 'http',
|
||||
$keystone_tenant = 'admin',
|
||||
$keystone_user = 'admin',
|
||||
$enabled = true
|
||||
$enabled = true,
|
||||
$use_syslog = false
|
||||
) inherits glance {
|
||||
|
||||
if $use_syslog
|
||||
{
|
||||
glance_registry_config {'DEFAULT/log_config': value => "/etc/glance/logging.conf";}
|
||||
##TODO add rsyslog module config
|
||||
}
|
||||
|
||||
require 'keystone::python'
|
||||
|
||||
|
42
deployment/puppet/keystone/files/logging.conf
Normal file
42
deployment/puppet/keystone/files/logging.conf
Normal file
@ -0,0 +1,42 @@
|
||||
[loggers]
|
||||
keys=root,keystone
|
||||
|
||||
[formatters]
|
||||
keys=normal,normal_with_name,debug
|
||||
|
||||
[handlers]
|
||||
keys=production,file,devel
|
||||
|
||||
[logger_keystone]
|
||||
level=DEBUG
|
||||
handlers=devel
|
||||
qualname=keystone
|
||||
|
||||
[logger_root]
|
||||
level=DEBUG
|
||||
handlers=production
|
||||
|
||||
[handler_production]
|
||||
class=handlers.SysLogHandler
|
||||
formatter=normal_with_name
|
||||
args=('/dev/log', handlers.SysLogHandler.LOG_LOCAL1)
|
||||
|
||||
[handler_file]
|
||||
class=logging.handlers.WatchedFileHandler
|
||||
formatter=normal_with_name
|
||||
args=('/var/log/keystone/keystone.log', 'a')
|
||||
|
||||
[handler_devel]
|
||||
class=StreamHandler
|
||||
level=NOTSET
|
||||
formatter=debug
|
||||
args=(sys.stdout,)
|
||||
|
||||
[formatter_normal]
|
||||
format=%(asctime)s %(levelname)s %(message)s
|
||||
|
||||
[formatter_normal_with_name]
|
||||
format=(%(name)s): %(asctime)s %(levelname)s %(message)s
|
||||
|
||||
[formatter_debug]
|
||||
format=(%(name)s): %(asctime)s %(levelname)s %(module)s %(funcName)s %(message)s
|
@ -65,9 +65,19 @@ class keystone(
|
||||
Keystone_config<||> ~> Exec<| title == 'keystone-manage db_sync'|>
|
||||
|
||||
# TODO implement syslog features
|
||||
if ( $use_syslog != 'False') {
|
||||
fail('use syslog currently only accepts false')
|
||||
if $use_syslog
|
||||
{
|
||||
keystone_config {'DEFAULT/log_config': value => "/etc/keystone/logging.conf";}
|
||||
file {"keystone-logging.conf":
|
||||
source=>"puppet:///keystone/logging.conf",
|
||||
path => "/etc/keystone/logging.conf",
|
||||
owner => "keystone",
|
||||
group => "keystone",
|
||||
require => [User['keystone'],Group['keystone'],File['/etc/keystone']]
|
||||
}
|
||||
##TODO add rsyslog module config
|
||||
}
|
||||
|
||||
|
||||
include 'keystone::params'
|
||||
|
||||
|
76
deployment/puppet/nova/files/logging.conf
Normal file
76
deployment/puppet/nova/files/logging.conf
Normal file
@ -0,0 +1,76 @@
|
||||
[loggers]
|
||||
keys = root, nova
|
||||
|
||||
[handlers]
|
||||
keys = stderr, stdout, watchedfile, syslog, null
|
||||
|
||||
[formatters]
|
||||
keys = legacynova, default
|
||||
|
||||
[logger_root]
|
||||
level = WARNING
|
||||
handlers = null
|
||||
|
||||
[logger_nova]
|
||||
level = DEBUG
|
||||
handlers = syslog
|
||||
qualname = nova
|
||||
|
||||
[logger_amqplib]
|
||||
level = WARNING
|
||||
handlers = stderr
|
||||
qualname = amqplib
|
||||
|
||||
[logger_sqlalchemy]
|
||||
level = WARNING
|
||||
handlers = stderr
|
||||
qualname = sqlalchemy
|
||||
# "level = INFO" logs SQL queries.
|
||||
# "level = DEBUG" logs SQL queries and results.
|
||||
# "level = WARNING" logs neither. (Recommended for production systems.)
|
||||
|
||||
[logger_boto]
|
||||
level = WARNING
|
||||
handlers = stderr
|
||||
qualname = boto
|
||||
|
||||
[logger_suds]
|
||||
level = INFO
|
||||
handlers = stderr
|
||||
qualname = suds
|
||||
|
||||
[logger_eventletwsgi]
|
||||
level = WARNING
|
||||
handlers = stderr
|
||||
qualname = eventlet.wsgi.server
|
||||
|
||||
[handler_stderr]
|
||||
class = StreamHandler
|
||||
args = (sys.stderr,)
|
||||
formatter = legacynova
|
||||
|
||||
[handler_stdout]
|
||||
class = StreamHandler
|
||||
args = (sys.stdout,)
|
||||
formatter = legacynova
|
||||
|
||||
[handler_watchedfile]
|
||||
class = handlers.WatchedFileHandler
|
||||
args = ('/var/log/nova/nova.log',)
|
||||
formatter = legacynova
|
||||
|
||||
[handler_syslog]
|
||||
class = handlers.SysLogHandler
|
||||
args = ('/dev/log', handlers.SysLogHandler.LOG_LOCAL0)
|
||||
formatter = legacynova
|
||||
|
||||
[handler_null]
|
||||
class = nova.openstack.common.log.NullHandler
|
||||
formatter = default
|
||||
args = ()
|
||||
|
||||
[formatter_legacynova]
|
||||
class = nova.openstack.common.log.LegacyFormatter
|
||||
|
||||
[formatter_default]
|
||||
format = %(message)s
|
@ -38,6 +38,8 @@ class nova(
|
||||
# this is how to query all resources from our clutser
|
||||
$nova_cluster_id='localcluster',
|
||||
$sql_connection = false,
|
||||
$use_syslog = false,
|
||||
$syslog_log_facility = "LOCAL0",
|
||||
$image_service = 'nova.image.glance.GlanceImageService',
|
||||
# these glance params should be optional
|
||||
# this should probably just be configured as a glance client
|
||||
@ -62,6 +64,7 @@ class nova(
|
||||
#$root_helper = $::nova::params::root_helper,
|
||||
$monitoring_notifications = false,
|
||||
$api_bind_address = '0.0.0.0',
|
||||
$remote_syslog_server = '127.0.0.1'
|
||||
) inherits nova::params {
|
||||
|
||||
# all nova_config resources should be applied
|
||||
@ -126,6 +129,33 @@ class nova(
|
||||
require => Package['nova-common'],
|
||||
}
|
||||
|
||||
#Configure logging in nova.conf
|
||||
if $use_syslog
|
||||
{
|
||||
|
||||
nova_config
|
||||
{
|
||||
'DEFAULT/log_config': value => "/etc/nova/logging.conf";
|
||||
'DEFAULT/use_syslog': value => "True";
|
||||
'DEFAULT/syslog_log_facility': value => $syslog_log_facility;
|
||||
'DEFAULT/logging_context_format_string':
|
||||
value => '%(levelname)s %(name)s [%(request_id)s %(user_id)s %(project_id)s] %(instance)s %(message)s';
|
||||
'DEFAULT/logging_default_format_string':
|
||||
value =>'%(levelname)s %(name)s [-] %(instance)s %(message)s';
|
||||
}
|
||||
|
||||
file {"nova-logging.conf":
|
||||
source=>"puppet:///nova/logging.conf",
|
||||
path => "/etc/nova/logging.conf",
|
||||
owner => "nova",
|
||||
group => "nova",
|
||||
require => [User['glance'],Group['glance'],Package['nova-common']]
|
||||
}
|
||||
|
||||
##TODO: Add rsyslog module for nova logging to <splunkhost>
|
||||
|
||||
}
|
||||
|
||||
file { $logdir:
|
||||
ensure => directory,
|
||||
mode => '0751',
|
||||
@ -166,7 +196,7 @@ class nova(
|
||||
}
|
||||
nova_config { 'DEFAULT/allow_resize_to_same_host': value => 'True' }
|
||||
nova_config { 'DEFAULT/image_service': value => $image_service }
|
||||
|
||||
|
||||
if $image_service == 'nova.image.glance.GlanceImageService' {
|
||||
if $glance_api_servers {
|
||||
nova_config { 'DEFAULT/glance_api_servers': value => $glance_api_servers }
|
||||
|
@ -93,6 +93,17 @@ $tenant_network_type = 'gre'
|
||||
|
||||
$quantum_host = $internal_virtual_ip
|
||||
|
||||
$use_syslog = false
|
||||
|
||||
if $use_syslog {
|
||||
class { "::rsyslog::client":
|
||||
log_local => true,
|
||||
log_auth_local => true,
|
||||
server => '127.0.0.1',
|
||||
port => '514'
|
||||
}
|
||||
}
|
||||
|
||||
# OpenStack packages to be installed
|
||||
$openstack_version = {
|
||||
'keystone' => 'latest',
|
||||
@ -121,6 +132,7 @@ if $::operatingsystem == 'Ubuntu'
|
||||
class { 'openstack::apparmor::disable': stage => 'openstack-custom-repo' }
|
||||
}
|
||||
|
||||
|
||||
# Definition of OpenStack controller nodes.
|
||||
node /fuel-controller-[\d+]/ {
|
||||
class { 'openstack::controller_ha':
|
||||
@ -166,6 +178,7 @@ node /fuel-controller-[\d+]/ {
|
||||
galera_nodes => $controller_hostnames,
|
||||
manage_volumes => $manage_volumes,
|
||||
nv_physical_volume => $nv_physical_volume,
|
||||
use_syslog => $use_syslog,
|
||||
}
|
||||
}
|
||||
|
||||
@ -202,6 +215,7 @@ node /fuel-compute-[\d+]/ {
|
||||
db_host => $internal_virtual_ip,
|
||||
ssh_private_key => 'puppet:///ssh_keys/openstack',
|
||||
ssh_public_key => 'puppet:///ssh_keys/openstack.pub',
|
||||
use_syslog => $use_syslog,
|
||||
}
|
||||
}
|
||||
|
||||
@ -229,7 +243,8 @@ node /fuel-quantum/ {
|
||||
tenant_network_type => $tenant_network_type,
|
||||
external_ipinfo => $external_ipinfo,
|
||||
segment_range => $segment_range,
|
||||
api_bind_address => $internal_address
|
||||
api_bind_address => $internal_address,
|
||||
use_syslog => $use_syslog,
|
||||
}
|
||||
|
||||
class { 'openstack::auth_file':
|
||||
|
@ -96,7 +96,15 @@ $quantum_db_dbname = 'quantum'
|
||||
$tenant_network_type = 'gre'
|
||||
$quantum_host = $internal_virtual_ip
|
||||
|
||||
|
||||
$use_syslog = false
|
||||
if $use_syslog {
|
||||
class { "::rsyslog::client":
|
||||
log_local => true,
|
||||
log_auth_local => true,
|
||||
server => '127.0.0.1',
|
||||
port => '514'
|
||||
}
|
||||
}
|
||||
# OpenStack packages to be installed
|
||||
$openstack_version = {
|
||||
'keystone' => 'latest',
|
||||
@ -172,6 +180,7 @@ class compact_controller {
|
||||
manage_volumes => $manage_volumes,
|
||||
galera_nodes => $controller_hostnames,
|
||||
nv_physical_volume => $nv_physical_volume,
|
||||
use_syslog => $use_syslog,
|
||||
}
|
||||
class { 'swift::keystone::auth':
|
||||
password => $swift_user_password,
|
||||
@ -270,6 +279,7 @@ node /fuel-compute-[\d+]/ {
|
||||
db_host => $internal_virtual_ip,
|
||||
ssh_private_key => 'puppet:///ssh_keys/openstack',
|
||||
ssh_public_key => 'puppet:///ssh_keys/openstack.pub',
|
||||
use_syslog => $use_syslog,
|
||||
}
|
||||
}
|
||||
|
||||
@ -297,7 +307,8 @@ node /fuel-quantum/ {
|
||||
tenant_network_type => $tenant_network_type,
|
||||
segment_range => $segment_range,
|
||||
external_ipinfo => $external_ipinfo,
|
||||
api_bind_address => $internal_address
|
||||
api_bind_address => $internal_address,
|
||||
use_syslog => $use_syslog,
|
||||
}
|
||||
|
||||
class { 'openstack::auth_file':
|
||||
|
@ -96,6 +96,15 @@ $quantum_db_dbname = 'quantum'
|
||||
$tenant_network_type = 'gre'
|
||||
$quantum_host = $internal_virtual_ip
|
||||
|
||||
$use_syslog = false
|
||||
if $use_syslog {
|
||||
class { "::rsyslog::client":
|
||||
log_local => true,
|
||||
log_auth_local => true,
|
||||
server => '127.0.0.1',
|
||||
port => '514'
|
||||
}
|
||||
}
|
||||
# OpenStack packages to be installed
|
||||
$openstack_version = {
|
||||
'keystone' => 'latest',
|
||||
@ -171,6 +180,7 @@ class compact_controller {
|
||||
manage_volumes => $manage_volumes,
|
||||
galera_nodes => $controller_hostnames,
|
||||
nv_physical_volume => $nv_physical_volume,
|
||||
use_syslog => $use_syslog,
|
||||
}
|
||||
|
||||
class { 'swift::keystone::auth':
|
||||
@ -273,6 +283,7 @@ node /fuel-compute-[\d+]/ {
|
||||
cinder => $cinder,
|
||||
ssh_private_key => 'puppet:///ssh_keys/openstack',
|
||||
ssh_public_key => 'puppet:///ssh_keys/openstack.pub',
|
||||
use_syslog => $use_syslog,
|
||||
}
|
||||
}
|
||||
|
||||
@ -301,7 +312,8 @@ node /fuel-quantum/ {
|
||||
tenant_network_type => $tenant_network_type,
|
||||
segment_range => $segment_range,
|
||||
external_ipinfo => $external_ipinfo,
|
||||
api_bind_address => $internal_address
|
||||
api_bind_address => $internal_address,
|
||||
use_syslog => $use_syslog,
|
||||
}
|
||||
|
||||
class { 'openstack::auth_file':
|
||||
|
@ -97,6 +97,15 @@ $quantum_db_dbname = 'quantum'
|
||||
$tenant_network_type = 'gre'
|
||||
$quantum_host = $internal_virtual_ip
|
||||
|
||||
$use_syslog = false
|
||||
if $use_syslog {
|
||||
class { "::rsyslog::client":
|
||||
log_local => true,
|
||||
log_auth_local => true,
|
||||
server => '127.0.0.1',
|
||||
port => '514'
|
||||
}
|
||||
}
|
||||
# OpenStack packages to be installed
|
||||
$openstack_version = {
|
||||
'keystone' => 'latest',
|
||||
@ -171,6 +180,7 @@ node /fuel-controller-[\d+]/ {
|
||||
manage_volumes => $manage_volumes,
|
||||
galera_nodes => $controller_hostnames,
|
||||
nv_physical_volume => $nv_physical_volume,
|
||||
use_syslog => $use_syslog,
|
||||
}
|
||||
|
||||
class { 'swift::keystone::auth':
|
||||
@ -213,6 +223,7 @@ node /fuel-compute-[\d+]/ {
|
||||
db_host => $internal_virtual_ip,
|
||||
ssh_private_key => 'puppet:///ssh_keys/openstack',
|
||||
ssh_public_key => 'puppet:///ssh_keys/openstack.pub',
|
||||
use_syslog => $use_syslog,
|
||||
|
||||
}
|
||||
}
|
||||
@ -291,7 +302,8 @@ node /fuel-quantum/ {
|
||||
tenant_network_type => $tenant_network_type,
|
||||
segment_range => $segment_range,
|
||||
external_ipinfo => $external_ipinfo,
|
||||
api_bind_address => $internal_address
|
||||
api_bind_address => $internal_address,
|
||||
use_syslog => $use_syslog,
|
||||
}
|
||||
|
||||
class { 'openstack::auth_file':
|
||||
|
@ -67,6 +67,14 @@ $quantum_host = $controller_node_address
|
||||
$sql_connection = "mysql://nova:${nova_db_password}@${controller_node_internal}/nova"
|
||||
$quantum_sql_connection = "mysql://${quantum_db_user}:${quantum_db_password}@${quantum_host}/${quantum_db_dbname}"
|
||||
|
||||
if $use_syslog {
|
||||
class { "::rsyslog::client":
|
||||
log_local => true,
|
||||
log_auth_local => true,
|
||||
server => '127.0.0.1',
|
||||
port => '514'
|
||||
}
|
||||
}
|
||||
# OpenStack packages to be installed
|
||||
$openstack_version = {
|
||||
'keystone' => 'latest',
|
||||
@ -126,6 +134,7 @@ node /fuel-controller-[\d+]/ {
|
||||
cinder_iscsi_bind_iface => $cinder_iscsi_bind_iface,
|
||||
manage_volumes => $manage_volumes,
|
||||
nv_physical_volume => $nv_physical_volume,
|
||||
use_syslog => $use_syslog,
|
||||
}
|
||||
|
||||
class { 'openstack::auth_file':
|
||||
@ -165,5 +174,6 @@ node /fuel-compute-[\d+]/ {
|
||||
db_host => $conrtoller_node_internal,
|
||||
manage_volumes => $manage_volumes,
|
||||
verbose => $verbose,
|
||||
use_syslog => $use_syslog,
|
||||
}
|
||||
}
|
||||
|
@ -95,12 +95,12 @@ class openstack::compute (
|
||||
$ssh_private_key = undef,
|
||||
$ssh_public_key = undef,
|
||||
# if the cinder management components should be installed
|
||||
$cinder = 'false',
|
||||
$cinder_user_password = 'cinder_user_pass',
|
||||
$cinder_db_password = 'cinder_db_pass',
|
||||
$cinder_db_user = 'cinder',
|
||||
$cinder_db_dbname = 'cinder',
|
||||
$db_host = '127.0.0.1',
|
||||
$use_syslog = false,
|
||||
|
||||
) {
|
||||
|
||||
@ -165,6 +165,7 @@ class openstack::compute (
|
||||
glance_api_servers => $glance_api_servers,
|
||||
verbose => $verbose,
|
||||
rabbit_host => $rabbit_host,
|
||||
use_syslog => $use_syslog,
|
||||
}
|
||||
|
||||
if ($cinder) {
|
||||
@ -182,6 +183,7 @@ class openstack::compute (
|
||||
auth_host => $service_endpoint,
|
||||
bind_host => false,
|
||||
cinder_user_password => $cinder_user_password,
|
||||
use_syslog => $use_syslog,
|
||||
}
|
||||
|
||||
} else {
|
||||
@ -320,6 +322,7 @@ class openstack::compute (
|
||||
rabbit_host => $rabbit_nodes ? { false => $rabbit_host, default => $rabbit_nodes },
|
||||
rabbit_user => $rabbit_user,
|
||||
rabbit_password => $rabbit_password,
|
||||
use_syslog => $use_syslog,
|
||||
#sql_connection => $quantum_sql_connection,
|
||||
}
|
||||
|
||||
|
@ -152,6 +152,7 @@ class openstack::controller (
|
||||
$galera_nodes = ['127.0.0.1'],
|
||||
$manage_volumes = false,
|
||||
$nv_physical_volume = undef,
|
||||
$use_syslog => false,
|
||||
) {
|
||||
|
||||
# Ensure things are run in order
|
||||
@ -229,6 +230,7 @@ class openstack::controller (
|
||||
quantum_user_password => $quantum_user_password,
|
||||
enabled => $enabled,
|
||||
package_ensure => $::openstack_keystone_version,
|
||||
use_syslog => $use_syslog,
|
||||
}
|
||||
|
||||
|
||||
@ -246,7 +248,8 @@ class openstack::controller (
|
||||
bind_host => $api_bind_address,
|
||||
enabled => $enabled,
|
||||
glance_backend => $glance_backend,
|
||||
registry_host => $service_endpoint,
|
||||
registry_host => $service_endpoint,
|
||||
use_syslog => $use_syslog,
|
||||
}
|
||||
|
||||
######## BEGIN NOVA ###########
|
||||
@ -309,7 +312,8 @@ class openstack::controller (
|
||||
exported_resources => $export_resources,
|
||||
enabled_apis => $enabled_apis,
|
||||
api_bind_address => $api_bind_address,
|
||||
ensure_package => $::openstack_version['nova']
|
||||
ensure_package => $::openstack_version['nova'],
|
||||
use_syslog => $use_syslog,
|
||||
}
|
||||
|
||||
######### Cinder Controller Services ########
|
||||
@ -332,6 +336,7 @@ class openstack::controller (
|
||||
bind_host => $api_bind_address,
|
||||
iscsi_bind_host => $cinder_iscsi_bind_addr,
|
||||
cinder_user_password => $cinder_user_password,
|
||||
use_syslog => $use_syslog,
|
||||
}
|
||||
} else {
|
||||
if $manage_volumes {
|
||||
|
@ -87,7 +87,7 @@ class openstack::controller_ha (
|
||||
$rabbit_nodes, $memcached_servers, $export_resources, $glance_backend='file', $swift_proxies=undef,
|
||||
$quantum = false, $quantum_user_password, $quantum_db_password, $quantum_db_user = 'quantum',
|
||||
$quantum_db_dbname = 'quantum', $cinder = false, $cinder_iscsi_bind_iface = false, $tenant_network_type = 'gre', $segment_range = '1:4094',
|
||||
$nv_physical_volume = undef, $manage_volumes = false,$galera_nodes,
|
||||
$nv_physical_volume = undef, $manage_volumes = false,$galera_nodes, $use_syslog = false,
|
||||
) {
|
||||
|
||||
$which = $::hostname ? { $master_hostname => 0, default => 1 }
|
||||
@ -287,6 +287,7 @@ local0.* -/var/log/haproxy.log'
|
||||
nv_physical_volume => $nv_physical_volume,
|
||||
# turn on SWIFT_ENABLED option for Horizon dashboard
|
||||
swift => $glance_backend ? { 'swift' => true, default => false },
|
||||
use_syslog => $use_syslog,
|
||||
}
|
||||
|
||||
class { 'openstack::auth_file':
|
||||
|
@ -73,6 +73,7 @@ class openstack::nova::controller (
|
||||
$ensure_package = present,
|
||||
$enabled_apis = 'ec2,osapi_compute,metadata',
|
||||
$api_bind_address = '0.0.0.0',
|
||||
$use_syslog = false,
|
||||
) {
|
||||
|
||||
# Configure the db string
|
||||
@ -145,7 +146,8 @@ if ($rabbit_nodes)
|
||||
verbose => $verbose,
|
||||
rabbit_host => $rabbit_connection,
|
||||
ensure_package => $ensure_package,
|
||||
api_bind_address => $api_bind_address
|
||||
api_bind_address => $api_bind_address,
|
||||
use_syslog => $use_syslog,
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -28,6 +28,7 @@ class openstack::quantum_router (
|
||||
$quantum_db_password = 'quantum_pass',
|
||||
$quantum_user_password = 'quantum_pass',
|
||||
$tenant_network_type = 'gre',
|
||||
$use_syslog = false,
|
||||
)
|
||||
{
|
||||
# Set up Quantum
|
||||
@ -42,6 +43,7 @@ class openstack::quantum_router (
|
||||
# sql_connection => $quantum_sql_connection,
|
||||
verbose => $verbose,
|
||||
debug => $verbose,
|
||||
use_syslog => $use_syslog,
|
||||
}
|
||||
|
||||
class { 'quantum::plugins::ovs':
|
||||
|
77
deployment/puppet/quantum/files/logging.conf
Normal file
77
deployment/puppet/quantum/files/logging.conf
Normal file
@ -0,0 +1,77 @@
|
||||
|
||||
[loggers]
|
||||
keys = root, quantum
|
||||
|
||||
[handlers]
|
||||
keys = stderr, stdout, watchedfile, syslog, null
|
||||
|
||||
[formatters]
|
||||
keys = legacyquantum, default
|
||||
|
||||
[logger_root]
|
||||
level = WARNING
|
||||
handlers = null
|
||||
|
||||
[logger_quantum]
|
||||
level = DEBUG
|
||||
handlers = syslog
|
||||
qualname = quantum
|
||||
|
||||
[logger_amqplib]
|
||||
level = WARNING
|
||||
handlers = stderr
|
||||
qualname = amqplib
|
||||
|
||||
[logger_sqlalchemy]
|
||||
level = WARNING
|
||||
handlers = stderr
|
||||
qualname = sqlalchemy
|
||||
# "level = INFO" logs SQL queries.
|
||||
# "level = DEBUG" logs SQL queries and results.
|
||||
# "level = WARNING" logs neither. (Recommended for production systems.)
|
||||
|
||||
[logger_boto]
|
||||
level = WARNING
|
||||
handlers = stderr
|
||||
qualname = boto
|
||||
|
||||
[logger_suds]
|
||||
level = INFO
|
||||
handlers = stderr
|
||||
qualname = suds
|
||||
|
||||
[logger_eventletwsgi]
|
||||
level = WARNING
|
||||
handlers = stderr
|
||||
qualname = eventlet.wsgi.server
|
||||
|
||||
[handler_stderr]
|
||||
class = StreamHandler
|
||||
args = (sys.stderr,)
|
||||
formatter = legacyquantum
|
||||
|
||||
[handler_stdout]
|
||||
class = StreamHandler
|
||||
args = (sys.stdout,)
|
||||
formatter = legacyquantum
|
||||
|
||||
[handler_watchedfile]
|
||||
class = handlers.WatchedFileHandler
|
||||
args = ('/var/log/quantum/quantum.log',)
|
||||
formatter = legacyquantum
|
||||
|
||||
[handler_syslog]
|
||||
class = handlers.SysLogHandler
|
||||
args = ('/dev/log', handlers.SysLogHandler.LOG_LOCAL4)
|
||||
formatter = legacyquantum
|
||||
|
||||
[handler_null]
|
||||
class = quantum.openstack.common.log.NullHandler
|
||||
formatter = default
|
||||
args = ()
|
||||
|
||||
[formatter_legacyquantum]
|
||||
class = quantum.openstack.common.log.LegacyFormatter
|
||||
|
||||
[formatter_default]
|
||||
format = %(message)s
|
@ -20,6 +20,7 @@ class quantum (
|
||||
$rabbit_port = '5672',
|
||||
$rabbit_user = 'guest',
|
||||
$rabbit_virtual_host = '/',
|
||||
$use_syslog = false
|
||||
) {
|
||||
include 'quantum::params'
|
||||
|
||||
@ -76,7 +77,17 @@ class quantum (
|
||||
'DEFAULT/rabbit_password': value => $rabbit_password;
|
||||
'DEFAULT/rabbit_virtual_host': value => $rabbit_virtual_host;
|
||||
}
|
||||
if $use_syslog
|
||||
{
|
||||
quantum_config {'DEFAULT/log_config': value => "/etc/quantum/logging.conf";}
|
||||
file {"quantum-logging.conf":
|
||||
source=>"puppet:///quantum/logging.conf",
|
||||
path => "/etc/quantum/logging.conf",
|
||||
owner => "quantum",
|
||||
group => "quantum",
|
||||
}
|
||||
|
||||
}
|
||||
# SELINUX=permissive
|
||||
if !defined(Class['selinux']) and ($::osfamily == 'RedHat') {
|
||||
class { 'selinux' : }
|
||||
|
8
deployment/puppet/rsyslog/Modulefile
Normal file
8
deployment/puppet/rsyslog/Modulefile
Normal file
@ -0,0 +1,8 @@
|
||||
name 'saz-rsyslog'
|
||||
version '1.1.4'
|
||||
source 'UNKNOWN'
|
||||
author 'saz'
|
||||
license 'Apache License, Version 2.0'
|
||||
summary 'UNKNOWN'
|
||||
description 'Manage rsyslog client and server via Puppet'
|
||||
project_page 'https://github.com/saz/puppet-rsyslog'
|
80
deployment/puppet/rsyslog/README.md
Normal file
80
deployment/puppet/rsyslog/README.md
Normal file
@ -0,0 +1,80 @@
|
||||
# puppet-rsyslog
|
||||
================
|
||||
|
||||
Manage rsyslog client and server via Puppet
|
||||
|
||||
## REQUIREMENTS
|
||||
|
||||
* Puppet >=2.6 if using parameterized classes
|
||||
* Currently supports Ubuntu >=11.04 & Debian running rsyslog >=4.5
|
||||
|
||||
## USAGE
|
||||
|
||||
### Client
|
||||
|
||||
#### Using default values
|
||||
```
|
||||
class { 'rsyslog::client': }
|
||||
```
|
||||
|
||||
#### Variables and default values
|
||||
```
|
||||
class { 'rsyslog::client':
|
||||
log_remote => true,
|
||||
remote_type => 'tcp',
|
||||
log_local => false,
|
||||
log_auth_local => false,
|
||||
custom_config => undef,
|
||||
server => 'log',
|
||||
port => '514',
|
||||
}
|
||||
```
|
||||
|
||||
### Server
|
||||
|
||||
#### Using default values
|
||||
```
|
||||
class { 'rsyslog::server': }
|
||||
```
|
||||
|
||||
#### Variables and default values
|
||||
```
|
||||
class { 'rsyslog::server':
|
||||
enable_tcp => true,
|
||||
enable_udp => true,
|
||||
server_dir => '/srv/log/',
|
||||
custom_config => undef,
|
||||
high_precision_timestamps => false,
|
||||
}
|
||||
```
|
||||
|
||||
Both can be installed at the same time.
|
||||
|
||||
|
||||
## PARAMETERS
|
||||
|
||||
The following lists all the class parameters this module accepts.
|
||||
|
||||
RSYSLOG::SERVER CLASS PARAMETERS VALUES DESCRIPTION
|
||||
--------------------------------------------------------------
|
||||
enable_tcp true,false Enable TCP listener. Defaults to true.
|
||||
enable_udp true,false Enable UDP listener. Defaults to true.
|
||||
server_dir STRING Folder where logs will be stored on the server. Defaults to '/srv/log/'
|
||||
custom_config STRING Specify your own template to use for server config. Defaults to undef. Example usage: custom_config => 'rsyslog/my_config.erb'
|
||||
high_precision_timestamps true,false Whether or not to use high precision timestamps.
|
||||
|
||||
RSYSLOG::CLIENT CLASS PARAMETERS VALUES DESCRIPTION
|
||||
--------------------------------------------------------------
|
||||
log_remote true,false Log Remotely. Defaults to true.
|
||||
remote_type 'tcp','udp' Which protocol to use when logging remotely. Defaults to 'tcp'.
|
||||
log_local true,false Log locally. Defualts to false.
|
||||
log_auth_local true,false Just log auth facility locally. Defaults to false.
|
||||
custom_config STRING Specify your own template to use for client config. Defaults to undef. Example usage: custom_config => 'rsyslog/my_config.erb
|
||||
server STRING Rsyslog server to log to. Will be used in the client configuration file.
|
||||
|
||||
|
||||
### Other notes
|
||||
|
||||
Due to a missing feature in current RELP versions (InputRELPServerBindRuleset option),
|
||||
remote logging is using TCP. You can switch between TCP and UDP. As soon as there is
|
||||
a new RELP version which supports setting Rulesets, I will add support for relp back.
|
3
deployment/puppet/rsyslog/files/rsyslog_default
Normal file
3
deployment/puppet/rsyslog/files/rsyslog_default
Normal file
@ -0,0 +1,3 @@
|
||||
# File is managed by puppet
|
||||
|
||||
RSYSLOGD_OPTIONS="-c4"
|
24
deployment/puppet/rsyslog/manifests/client.pp
Normal file
24
deployment/puppet/rsyslog/manifests/client.pp
Normal file
@ -0,0 +1,24 @@
|
||||
class rsyslog::client (
|
||||
$log_remote = true,
|
||||
$remote_type = 'tcp',
|
||||
$log_local = false,
|
||||
$log_auth_local = false,
|
||||
$custom_config = undef,
|
||||
$server = 'log',
|
||||
$port = '514'
|
||||
) inherits rsyslog {
|
||||
|
||||
$content_real = $custom_config ? {
|
||||
'' => template("${module_name}/client.conf.erb"),
|
||||
default => template($custom_config),
|
||||
}
|
||||
|
||||
file { $rsyslog::params::client_conf:
|
||||
ensure => present,
|
||||
owner => root,
|
||||
group => $rsyslog::params::run_group,
|
||||
content => $content_real,
|
||||
require => Class['rsyslog::config'],
|
||||
notify => Class['rsyslog::service'],
|
||||
}
|
||||
}
|
37
deployment/puppet/rsyslog/manifests/config.pp
Normal file
37
deployment/puppet/rsyslog/manifests/config.pp
Normal file
@ -0,0 +1,37 @@
|
||||
class rsyslog::config {
|
||||
file { $rsyslog::params::rsyslog_d:
|
||||
owner => root,
|
||||
group => $rsyslog::params::run_group,
|
||||
purge => true,
|
||||
recurse => true,
|
||||
force => true,
|
||||
require => Class["rsyslog::install"],
|
||||
ensure => directory,
|
||||
}
|
||||
|
||||
file { $rsyslog::params::rsyslog_conf:
|
||||
owner => root,
|
||||
group => $rsyslog::params::run_group,
|
||||
ensure => file,
|
||||
content => template("${module_name}/rsyslog.conf.erb"),
|
||||
require => Class["rsyslog::install"],
|
||||
notify => Class["rsyslog::service"],
|
||||
}
|
||||
|
||||
file { $rsyslog::params::rsyslog_default:
|
||||
owner => root,
|
||||
group => $rsyslog::params::run_group,
|
||||
ensure => file,
|
||||
source => "puppet:///modules/rsyslog/rsyslog_default",
|
||||
require => Class["rsyslog::install"],
|
||||
notify => Class["rsyslog::service"],
|
||||
}
|
||||
|
||||
file { $rsyslog::params::spool_dir:
|
||||
owner => root,
|
||||
group => $rsyslog::params::run_group,
|
||||
ensure => directory,
|
||||
require => Class["rsyslog::install"],
|
||||
notify => Class["rsyslog::service"],
|
||||
}
|
||||
}
|
19
deployment/puppet/rsyslog/manifests/imfile.pp
Normal file
19
deployment/puppet/rsyslog/manifests/imfile.pp
Normal file
@ -0,0 +1,19 @@
|
||||
define rsyslog::imfile(
|
||||
$file_name,
|
||||
$file_tag,
|
||||
$file_facility,
|
||||
$polling_interval = 10,
|
||||
$file_severity = 'notice',
|
||||
$run_file_monitor = true
|
||||
) {
|
||||
include rsyslog::params
|
||||
|
||||
file { "${rsyslog::params::rsyslog_d}${name}.conf":
|
||||
ensure => file,
|
||||
owner => 'root',
|
||||
group => $rsyslog::params::run_group,
|
||||
content => template('rsyslog/imfile.erb'),
|
||||
require => Class['rsyslog::install'],
|
||||
notify => Class['rsyslog::service'],
|
||||
}
|
||||
}
|
3
deployment/puppet/rsyslog/manifests/init.pp
Normal file
3
deployment/puppet/rsyslog/manifests/init.pp
Normal file
@ -0,0 +1,3 @@
|
||||
class rsyslog {
|
||||
include rsyslog::params, rsyslog::install, rsyslog::config, rsyslog::service
|
||||
}
|
9
deployment/puppet/rsyslog/manifests/install.pp
Normal file
9
deployment/puppet/rsyslog/manifests/install.pp
Normal file
@ -0,0 +1,9 @@
|
||||
class rsyslog::install {
|
||||
package { $rsyslog::params::rsyslog_package_name:
|
||||
ensure => $rsyslog::params::package_status,
|
||||
}
|
||||
|
||||
package { $rsyslog::params::relp_package_name:
|
||||
ensure => $rsyslog::params::package_status
|
||||
}
|
||||
}
|
42
deployment/puppet/rsyslog/manifests/params.pp
Normal file
42
deployment/puppet/rsyslog/manifests/params.pp
Normal file
@ -0,0 +1,42 @@
|
||||
class rsyslog::params {
|
||||
case $::operatingsystem {
|
||||
ubuntu, debian: {
|
||||
$rsyslog_package_name = 'rsyslog'
|
||||
$relp_package_name = 'rsyslog-relp'
|
||||
$package_status = 'latest'
|
||||
$rsyslog_d = '/etc/rsyslog.d/'
|
||||
$rsyslog_conf = '/etc/rsyslog.conf'
|
||||
$rsyslog_default = '/etc/default/rsyslog'
|
||||
$run_user = 'root'
|
||||
$run_group = 'root'
|
||||
$log_user = 'root'
|
||||
$log_group = 'adm'
|
||||
$spool_dir = '/var/spool/rsyslog/'
|
||||
$service_name = 'rsyslog'
|
||||
$client_conf = "${rsyslog_d}client.conf"
|
||||
$server_conf = "${rsyslog_d}server.conf"
|
||||
}
|
||||
freebsd: {
|
||||
$rsyslog_package_name = 'rsyslog5'
|
||||
$relp_package_name = 'rsyslog5-relp'
|
||||
$package_status = 'present'
|
||||
$rsyslog_d = '/etc/syslog.d/'
|
||||
$rsyslog_conf = '/etc/syslog.conf'
|
||||
$rsyslog_default = '/etc/defaults/syslogd'
|
||||
$run_user = 'root'
|
||||
$run_group = 'wheel'
|
||||
$log_user = 'root'
|
||||
$log_group = 'wheel'
|
||||
$spool_dir = '/var/spool/syslog/'
|
||||
$service_name = 'syslogd'
|
||||
$client_conf = "${rsyslog_d}client.conf"
|
||||
$server_conf = "${rsyslog_d}server.conf"
|
||||
}
|
||||
|
||||
|
||||
default: {
|
||||
fail("Unsupported platform: ${::operatingsystem}")
|
||||
}
|
||||
}
|
||||
|
||||
}
|
20
deployment/puppet/rsyslog/manifests/server.pp
Normal file
20
deployment/puppet/rsyslog/manifests/server.pp
Normal file
@ -0,0 +1,20 @@
|
||||
class rsyslog::server (
|
||||
$enable_tcp = true,
|
||||
$enable_udp = true,
|
||||
$server_dir = '/srv/log/',
|
||||
$custom_config = undef,
|
||||
$high_precision_timestamps = false
|
||||
) inherits rsyslog {
|
||||
|
||||
file { $rsyslog::params::server_conf:
|
||||
ensure => present,
|
||||
owner => root,
|
||||
group => $rsyslog::params::run_group,
|
||||
content => $custom_config ? {
|
||||
'' => template("${module_name}/server.conf.erb"),
|
||||
default => template($custom_config),
|
||||
},
|
||||
require => Class['rsyslog::config'],
|
||||
notify => Class['rsyslog::service'],
|
||||
}
|
||||
}
|
7
deployment/puppet/rsyslog/manifests/service.pp
Normal file
7
deployment/puppet/rsyslog/manifests/service.pp
Normal file
@ -0,0 +1,7 @@
|
||||
class rsyslog::service {
|
||||
service { $rsyslog::params::service_name:
|
||||
ensure => running,
|
||||
enable => true,
|
||||
require => Class["rsyslog::config"],
|
||||
}
|
||||
}
|
6
deployment/puppet/rsyslog/spec/spec.opts
Normal file
6
deployment/puppet/rsyslog/spec/spec.opts
Normal file
@ -0,0 +1,6 @@
|
||||
--format
|
||||
s
|
||||
--colour
|
||||
--loadby
|
||||
mtime
|
||||
--backtrace
|
18
deployment/puppet/rsyslog/spec/spec_helper.rb
Normal file
18
deployment/puppet/rsyslog/spec/spec_helper.rb
Normal file
@ -0,0 +1,18 @@
|
||||
require 'pathname'
|
||||
dir = Pathname.new(__FILE__).parent
|
||||
$LOAD_PATH.unshift(dir, dir + 'lib', dir + '../lib')
|
||||
|
||||
require 'mocha'
|
||||
require 'puppet'
|
||||
gem 'rspec', '=1.2.9'
|
||||
require 'spec/autorun'
|
||||
|
||||
Spec::Runner.configure do |config|
|
||||
config.mock_with :mocha
|
||||
end
|
||||
|
||||
# We need this because the RAL uses 'should' as a method. This
|
||||
# allows us the same behaviour but with a different method name.
|
||||
class Object
|
||||
alias :must :should
|
||||
end
|
86
deployment/puppet/rsyslog/templates/client.conf.erb
Normal file
86
deployment/puppet/rsyslog/templates/client.conf.erb
Normal file
@ -0,0 +1,86 @@
|
||||
# file is managed by puppet
|
||||
|
||||
# An "In-Memory Queue" is created for remote logging.
|
||||
$WorkDirectory <%= scope.lookupvar('rsyslog::params::spool_dir') -%> # where to place spool files
|
||||
$ActionQueueFileName queue # unique name prefix for spool files
|
||||
$ActionQueueMaxDiskSpace 1g # 1gb space limit (use as much as possible)
|
||||
$ActionQueueSaveOnShutdown on # save messages to disk on shutdown
|
||||
$ActionQueueType LinkedList # run asynchronously
|
||||
$ActionResumeRetryCount -1 # infinety retries if host is down
|
||||
|
||||
<% if scope.lookupvar('rsyslog::client::log_remote') -%>
|
||||
# Log to remote syslog server using <%= scope.lookupvar('rsyslog::client::remote_type') %>
|
||||
<% if scope.lookupvar('rsyslog::client::remote_type') == 'tcp' -%>
|
||||
*.* @@<%= scope.lookupvar('rsyslog::client::server') -%>:<%= scope.lookupvar('rsyslog::client::port') -%>;RSYSLOG_ForwardFormat
|
||||
<% else -%>
|
||||
*.* @<%= scope.lookupvar('rsyslog::client::server') -%>:<%= scope.lookupvar('rsyslog::client::port') -%>;RSYSLOG_ForwardFormat
|
||||
<% end -%>
|
||||
<% end -%>
|
||||
|
||||
<% if scope.lookupvar('rsyslog::client::log_auth_local') or scope.lookupvar('rsyslog::client::log_local') -%>
|
||||
# We log locally, restore to default format
|
||||
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
|
||||
|
||||
# Log auth messages locally
|
||||
auth,authpriv.* /var/log/auth.log
|
||||
<% end -%>
|
||||
|
||||
<% if scope.lookupvar('rsyslog::client::log_local') -%>
|
||||
# First some standard log files. Log by facility.
|
||||
#
|
||||
*.*;auth,authpriv.none -/var/log/syslog
|
||||
cron.* /var/log/cron.log
|
||||
daemon.* -/var/log/daemon.log
|
||||
kern.* -/var/log/kern.log
|
||||
#lpr.* -/var/log/lpr.log
|
||||
mail.* -/var/log/mail.log
|
||||
user.* -/var/log/user.log
|
||||
|
||||
#
|
||||
# Logging for the mail system. Split it up so that
|
||||
# it is easy to write scripts to parse these files.
|
||||
#
|
||||
mail.info -/var/log/mail.info
|
||||
mail.warn -/var/log/mail.warn
|
||||
mail.err /var/log/mail.err
|
||||
|
||||
#
|
||||
# Logging for INN news system.
|
||||
#
|
||||
news.crit /var/log/news/news.crit
|
||||
news.err /var/log/news/news.err
|
||||
news.notice -/var/log/news/news.notice
|
||||
|
||||
#
|
||||
# Some "catch-all" log files.
|
||||
#
|
||||
*.=debug;\
|
||||
auth,authpriv.none;\
|
||||
news.none;mail.none -/var/log/debug
|
||||
*.=info;*.=notice;*.=warn;\
|
||||
auth,authpriv.none;\
|
||||
cron,daemon.none;\
|
||||
mail,news.none -/var/log/messages
|
||||
|
||||
#
|
||||
# I like to have messages displayed on the console, but only on a virtual
|
||||
# console I usually leave idle.
|
||||
#
|
||||
#daemon,mail.*;\
|
||||
# news.=crit;news.=err;news.=notice;\
|
||||
# *.=debug;*.=info;\
|
||||
# *.=notice;*.=warn /dev/tty8
|
||||
|
||||
# The named pipe /dev/xconsole is for the `xconsole' utility. To use it,
|
||||
# you must invoke `xconsole' with the `-file' option:
|
||||
#
|
||||
# $ xconsole -file /dev/xconsole [...]
|
||||
#
|
||||
# NOTE: adjust the list below, or you'll go crazy if you have a reasonably
|
||||
# busy site..
|
||||
#
|
||||
daemon.*;mail.*;\
|
||||
news.err;\
|
||||
*.=debug;*.=info;\
|
||||
*.=notice;*.=warn |/dev/xconsole
|
||||
<% end -%>
|
11
deployment/puppet/rsyslog/templates/imfile.erb
Normal file
11
deployment/puppet/rsyslog/templates/imfile.erb
Normal file
@ -0,0 +1,11 @@
|
||||
$ModLoad imfile
|
||||
|
||||
$InputFileName <%= file_name %>
|
||||
$InputFileTag <%= file_tag %>
|
||||
$InputFileStateFile state-<%= name %>
|
||||
$InputFileSeverity <%= file_severity %>
|
||||
$InputFileFacility <%= file_facility %>
|
||||
$InputFilePollingInterval <%= polling_interval %>
|
||||
<% if run_file_monitor == true -%>
|
||||
$InputRunFileMonitor
|
||||
<% end -%>
|
33
deployment/puppet/rsyslog/templates/rsyslog.conf.erb
Normal file
33
deployment/puppet/rsyslog/templates/rsyslog.conf.erb
Normal file
@ -0,0 +1,33 @@
|
||||
# file is managed by puppet
|
||||
|
||||
#################
|
||||
#### MODULES ####
|
||||
#################
|
||||
|
||||
$ModLoad imuxsock # provides support for local system logging
|
||||
$ModLoad imklog # provides kernel logging support (previously done by rklogd)
|
||||
#$ModLoad immark # provides --MARK-- message capability
|
||||
|
||||
###########################
|
||||
#### GLOBAL DIRECTIVES ####
|
||||
###########################
|
||||
|
||||
#
|
||||
# Set the default permissions for all log files.
|
||||
#
|
||||
$FileOwner <%= scope.lookupvar('rsyslog::params::log_user') %>
|
||||
$FileGroup <%= scope.lookupvar('rsyslog::params::log_group') %>
|
||||
$FileCreateMode 0640
|
||||
$DirCreateMode 0755
|
||||
$PrivDropToUser <%= scope.lookupvar('rsyslog::params::run_user') %>
|
||||
$PrivDropToGroup <%= scope.lookupvar('rsyslog::params::run_group') %>
|
||||
|
||||
#
|
||||
# Include all config files in <%= scope.lookupvar('rsyslog::params::rsyslog_d') %>
|
||||
#
|
||||
$IncludeConfig <%= scope.lookupvar('rsyslog::params::rsyslog_d') -%>*.conf
|
||||
|
||||
#
|
||||
# Emergencies are sent to everybody logged in.
|
||||
#
|
||||
*.emerg *
|
59
deployment/puppet/rsyslog/templates/server.conf.erb
Normal file
59
deployment/puppet/rsyslog/templates/server.conf.erb
Normal file
@ -0,0 +1,59 @@
|
||||
# File is managed by puppet
|
||||
|
||||
<% if scope.lookupvar('rsyslog::server::enable_udp') -%>
|
||||
# Load UDP module
|
||||
$ModLoad imudp
|
||||
<% end -%>
|
||||
|
||||
<% if scope.lookupvar('rsyslog::server::enable_tcp') -%>
|
||||
# Load TCP module
|
||||
$ModLoad imtcp
|
||||
<% end -%>
|
||||
|
||||
<% if scope.lookupvar('rsyslog::server::high_precision_timestamps') == false -%>
|
||||
#
|
||||
# Use traditional timestamp format.
|
||||
# To enable high precision timestamps, comment out the following line.
|
||||
#
|
||||
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
|
||||
<% end -%>
|
||||
|
||||
# Switch to remote ruleset
|
||||
$RuleSet remote
|
||||
|
||||
# Templates
|
||||
$Template dynAuthLog,"<%= scope.lookupvar('rsyslog::server::server_dir') -%>%source:R,ERE,1,DFLT:([A-Za-z-]*)--end%/auth.log"
|
||||
$Template dynSyslog,"<%= scope.lookupvar('rsyslog::server::server_dir') -%>%source:R,ERE,1,DFLT:([A-Za-z-]*)--end%/syslog"
|
||||
$Template dynCronLog,"<%= scope.lookupvar('rsyslog::server::server_dir') -%>%source:R,ERE,1,DFLT:([A-Za-z-]*)--end%/cron.log"
|
||||
$Template dynDaemonLog,"<%= scope.lookupvar('rsyslog::server::server_dir') -%>%source:R,ERE,1,DFLT:([A-Za-z-]*)--end%/daemon.log"
|
||||
$Template dynKernLog,"<%= scope.lookupvar('rsyslog::server::server_dir') -%>%source:R,ERE,1,DFLT:([A-Za-z-]*)--end%/kern.log"
|
||||
$Template dynUserLog,"<%= scope.lookupvar('rsyslog::server::server_dir') -%>%source:R,ERE,1,DFLT:([A-Za-z-]*)--end%/user.log"
|
||||
$Template dynMailLog,"<%= scope.lookupvar('rsyslog::server::server_dir') -%>%source:R,ERE,1,DFLT:([A-Za-z-]*)--end%/mail.log"
|
||||
$Template dynDebug,"<%= scope.lookupvar('rsyslog::server::server_dir') -%>%source:R,ERE,1,DFLT:([A-Za-z-]*)--end%/debug"
|
||||
$Template dynMessages,"<%= scope.lookupvar('rsyslog::server::server_dir') -%>%source:R,ERE,1,DFLT:([A-Za-z-]*)--end%/messages"
|
||||
|
||||
# Rules
|
||||
auth,authpriv.* ?dynAuthLog
|
||||
*.*;auth,authpriv.none,mail.none,cron.none -?dynSyslog
|
||||
cron.* ?dynCronLog
|
||||
daemon.* -?dynDaemonLog
|
||||
kern.* -?dynKernLog
|
||||
mail.* -?dynMailLog
|
||||
user.* -?dynUserLog
|
||||
*.=info;*.=notice;*.=warn;\
|
||||
auth.none,authpriv.none;\
|
||||
cron.none,daemon.none;\
|
||||
mail.none,news.none -?dynMessages
|
||||
|
||||
# Switch back to default ruleset
|
||||
$RuleSet RSYSLOG_DefaultRuleset
|
||||
|
||||
<% if scope.lookupvar('rsyslog::server::enable_udp') -%>
|
||||
$InputUDPServerBindRuleset remote
|
||||
$UDPServerRun 514
|
||||
<% end -%>
|
||||
|
||||
<% if scope.lookupvar('rsyslog::server::enable_tcp') -%>
|
||||
$InputTCPServerBindRuleset remote
|
||||
$InputTCPServerRun 514
|
||||
<% end -%>
|
1
deployment/puppet/rsyslog/tests/init.pp
Normal file
1
deployment/puppet/rsyslog/tests/init.pp
Normal file
@ -0,0 +1 @@
|
||||
include rsyslog
|
Loading…
Reference in New Issue
Block a user