Yuvipanda has submitted this change and it was merged.
Change subject: eventlogging: couple less tightly to ganglia
......................................................................
eventlogging: couple less tightly to ganglia
1) Segregate code that depends on Ganglia in eventlogging::monitoring.
2) Make eventlogging::monitoring optional.
3) Don't include if hiera variable has_ganglia is set to false
Change-Id: I9eaffef2c0176d6860ba0709d2eaa6cdfedd8152
---
M manifests/role/eventlogging.pp
M modules/eventlogging/manifests/init.pp
M modules/eventlogging/manifests/monitoring.pp
M modules/eventlogging/manifests/service/consumer.pp
M modules/eventlogging/manifests/service/forwarder.pp
M modules/eventlogging/manifests/service/multiplexer.pp
M modules/eventlogging/manifests/service/processor.pp
M modules/eventlogging/manifests/service/reporter.pp
8 files changed, 34 insertions(+), 7 deletions(-)
Approvals:
Ori.livneh: Looks good to me, but someone else must approve
Andrew Bogott: Looks good to me, but someone else must approve
Yuvipanda: Looks good to me, approved
jenkins-bot: Verified
diff --git a/manifests/role/eventlogging.pp b/manifests/role/eventlogging.pp
index 8fff122..a1905c9 100644
--- a/manifests/role/eventlogging.pp
+++ b/manifests/role/eventlogging.pp
@@ -18,7 +18,10 @@
#
class role::eventlogging {
include eventlogging
- include eventlogging::monitoring
+
+ if hiera('has_ganglia', true) {
+ include role::eventlogging::monitoring
+ }
system::role { 'role::eventlogging':
description => 'EventLogging',
@@ -151,9 +154,15 @@
# to undergo some production failover testing. Disabling this for now.
ensure => 'absent',
}
+}
- ## Monitoring
+# == Class: role::eventlogging::monitoring
+#
+# Provisions scripts for reporting state to monitoring tools.
+#
+class role::eventlogging::monitoring {
+ include ::eventlogging::monitoring
eventlogging::service::reporter { 'statsd':
host => 'statsd.eqiad.wmnet',
diff --git a/modules/eventlogging/manifests/init.pp
b/modules/eventlogging/manifests/init.pp
index d807b55..16d2a10 100644
--- a/modules/eventlogging/manifests/init.pp
+++ b/modules/eventlogging/manifests/init.pp
@@ -40,7 +40,6 @@
#
class eventlogging {
include ::eventlogging::package
- include ::eventlogging::monitoring
$log_dir = '/srv/log/eventlogging'
diff --git a/modules/eventlogging/manifests/monitoring.pp
b/modules/eventlogging/manifests/monitoring.pp
index 38222d7..127be9b 100644
--- a/modules/eventlogging/manifests/monitoring.pp
+++ b/modules/eventlogging/manifests/monitoring.pp
@@ -4,7 +4,8 @@
# (measured in events per second) of all locally-published event streams.
#
class eventlogging::monitoring {
- include eventlogging
+ include ::eventlogging
+ include ::ganglia
file { '/usr/lib/ganglia/python_modules/eventlogging_mon.py':
ensure => present,
@@ -23,6 +24,14 @@
source => 'puppet:///modules/eventlogging/check_eventlogging_jobs',
mode => '0755',
}
+
+ # The EventLogging Ganglia module scans /etc/eventlogging.d
+ # to determine which endpoints to monitor, so if the contents
+ # of that directory change, the module should be restarted.
+
+ Eventlogging::Service::Multiplexer <| |> ~> Service['gmond']
+ Eventlogging::Service::Processor <| |> ~> Service['gmond']
+ Eventlogging::Service::Reporter <| |> ~> Service['gmond']
}
diff --git a/modules/eventlogging/manifests/service/consumer.pp
b/modules/eventlogging/manifests/service/consumer.pp
index 8c110aa..96f19cc 100644
--- a/modules/eventlogging/manifests/service/consumer.pp
+++ b/modules/eventlogging/manifests/service/consumer.pp
@@ -42,6 +42,8 @@
$sid = $title,
$ensure = present,
) {
+ include ::eventlogging
+
$basename = regsubst($title, '\W', '-', 'G')
file { "/etc/eventlogging.d/consumers/${basename}":
ensure => $ensure,
diff --git a/modules/eventlogging/manifests/service/forwarder.pp
b/modules/eventlogging/manifests/service/forwarder.pp
index b9a388d..bb444e0 100644
--- a/modules/eventlogging/manifests/service/forwarder.pp
+++ b/modules/eventlogging/manifests/service/forwarder.pp
@@ -26,6 +26,8 @@
$count = false,
$ensure = present,
) {
+ include ::eventlogging
+
$basename = regsubst($title, '\W', '-', 'G')
file { "/etc/eventlogging.d/forwarders/${basename}":
ensure => $ensure,
diff --git a/modules/eventlogging/manifests/service/multiplexer.pp
b/modules/eventlogging/manifests/service/multiplexer.pp
index 235e859..1fa0804 100644
--- a/modules/eventlogging/manifests/service/multiplexer.pp
+++ b/modules/eventlogging/manifests/service/multiplexer.pp
@@ -34,10 +34,12 @@
$sid = $title,
$ensure = present,
) {
+ include ::eventlogging
+
$basename = regsubst($title, '\W', '-', 'G')
file { "/etc/eventlogging.d/multiplexers/${basename}":
ensure => $ensure,
content => template('eventlogging/multiplexer.erb'),
- notify => Service['eventlogging/init', 'gmond'],
+ notify => Service['eventlogging/init'],
}
}
diff --git a/modules/eventlogging/manifests/service/processor.pp
b/modules/eventlogging/manifests/service/processor.pp
index cb98388..5765393 100644
--- a/modules/eventlogging/manifests/service/processor.pp
+++ b/modules/eventlogging/manifests/service/processor.pp
@@ -55,10 +55,12 @@
$sid = $title,
$ensure = present,
) {
+ include ::eventlogging
+
$basename = regsubst($title, '\W', '-', 'G')
file { "/etc/eventlogging.d/processors/${basename}":
ensure => $ensure,
content => template('eventlogging/processor.erb'),
- notify => Service['eventlogging/init', 'gmond'],
+ notify => Service['eventlogging/init'],
}
}
diff --git a/modules/eventlogging/manifests/service/reporter.pp
b/modules/eventlogging/manifests/service/reporter.pp
index 8331434..45935b1 100644
--- a/modules/eventlogging/manifests/service/reporter.pp
+++ b/modules/eventlogging/manifests/service/reporter.pp
@@ -28,10 +28,12 @@
$port = 8125,
$ensure = present,
) {
+ include ::eventlogging
+
$basename = regsubst($title, '\W', '-', 'G')
file { "/etc/eventlogging.d/reporters/${basename}":
ensure => $ensure,
content => template('eventlogging/reporter.erb'),
- notify => Service['eventlogging/init', 'gmond'],
+ notify => Service['eventlogging/init'],
}
}
--
To view, visit https://gerrit.wikimedia.org/r/173758
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I9eaffef2c0176d6860ba0709d2eaa6cdfedd8152
Gerrit-PatchSet: 6
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: Ori.livneh <[email protected]>
Gerrit-Reviewer: Andrew Bogott <[email protected]>
Gerrit-Reviewer: Giuseppe Lavagetto <[email protected]>
Gerrit-Reviewer: Ori.livneh <[email protected]>
Gerrit-Reviewer: Yuvipanda <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits