Skip to content

Commit

Permalink
Allow TCP and UDP listening to be configurable
Browse files Browse the repository at this point in the history
  • Loading branch information
Simon McCartney committed Aug 27, 2013
1 parent 956a82a commit f2e6ad4
Show file tree
Hide file tree
Showing 4 changed files with 30 additions and 15 deletions.
5 changes: 4 additions & 1 deletion .kitchen.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,10 @@ suites:
run_list: ["recipe[rsyslog::server]", "recipe[rsyslog::client]"]
attributes:
rsyslog:
server_ip: 127.0.0.1
server_ip: 127.0.0.1 # send to ourselves (dumb)
udp_enabled: true # listen on udp..
udp_address: 127.0.0.1 # ..but bound to the loopback for safety

- name: rsyslog-clientdisabled
run_list: ["recipe[rsyslog::clientdisabled]"]
attributes:
18 changes: 14 additions & 4 deletions attributes/default.rb
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,20 @@
#

default["rsyslog"]["log_dir"] = "/srv/rsyslog"
default["rsyslog"]["server"] = false
default["rsyslog"]["protocol"] = "tcp"
default["rsyslog"]["port"] = "514"
default["rsyslog"]["server_ip"] = nil

# rsyslog shipper/remote configuration
default["rsyslog"]["server_ip"] = nil # where to send logs
default["rsyslog"]["protocol"] = "tcp" # protocol touse when sending logs
default["rsyslog"]["port"] = "514" # port to use when sending logs

# rsyslog server/listener options
default["rsyslog"]["server"] = false
default["rsyslog"]['listener']["tcp_enabled"] = false # listen on TCP?
default["rsyslog"]['listener']["tcp_port"] = "514" # what port to listen for TCP on
default["rsyslog"]['listener']["udp_enabled"] = true # listen on UDP?
default["rsyslog"]['listener']["udp_port"] = "514" # what port to listen for UDP on
default["rsyslog"]['listener']["udp_address"] = nil # what ip to bind to, nil means unconfigured, so rsyslog defaults

default["rsyslog"]["server_search"] = "role:loghost"
default["rsyslog"]["remote_logs"] = true
default["rsyslog"]["per_host_dir"] = "%$YEAR%/%$MONTH%/%$DAY%/%HOSTNAME%"
Expand Down
1 change: 0 additions & 1 deletion recipes/default.rb
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,6 @@
owner node['rsyslog']['user']
group node['rsyslog']['group']
mode 0644
variables(:protocol => node['rsyslog']['protocol'])
notifies :restart, "service[#{node['rsyslog']['service_name']}]"
end

Expand Down
21 changes: 12 additions & 9 deletions templates/default/rsyslog.conf.erb
Original file line number Diff line number Diff line change
Expand Up @@ -21,17 +21,20 @@ $ModLoad imuxsock # provides support for local system logging
$ModLoad imklog # provides kernel logging support (previously done by rklogd)
#$ModLoad immark # provides --MARK-- message capability

<% if node['rsyslog']['server'] -%>
# Provide <%= @protocol.upcase %> log reception
<% case @protocol -%>
<% when "tcp" -%>
<% if node['rsyslog']['listener']['tcp_enabled'] -%>
# Provide TCP log reception
$ModLoad imtcp
$InputTCPServerRun <%= node['rsyslog']['port'] %>
<% when "udp" -%>
$InputTCPServerRun <%= node['rsyslog']['listener']['tcp_port'] %>
<% end -%>

<% if node['rsyslog']['listener']['udp_enabled'] -%>
# Provide UDP log reception
$ModLoad imudp
$UDPServerRun <%= node['rsyslog']['port'] %>
<% end -%>
<% end -%>
<% unless node['rsyslog']['listener']['udp_address'].nil? %>
$UDPServerAddress <%= node['rsyslog']['listener']['udp_address'] %>
<% end %>
$UDPServerRun <%= node['rsyslog']['listener']['udp_port'] %>
<% end -%>

###########################
#### GLOBAL DIRECTIVES ####
Expand Down

0 comments on commit f2e6ad4

Please sign in to comment.