#
-# Cookbook Name:: memcached
+# Cookbook:: memcached
# Recipe:: default
#
-# Copyright 2011, OpenStreetMap Foundation
+# Copyright:: 2011, OpenStreetMap Foundation
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
-# http://www.apache.org/licenses/LICENSE-2.0
+# https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# limitations under the License.
#
+include_recipe "munin"
+include_recipe "prometheus"
+
package "memcached"
service "memcached" do
- action [ :enable, :start ]
+ action [:enable, :start]
supports :status => true, :restart => true
end
source "memcached.conf.erb"
owner "root"
group "root"
- mode 0644
- notifies :restart, resources(:service => "memcached")
+ mode "644"
+ notifies :restart, "service[memcached]"
end
munin_plugin_conf "memcached_multi" do
template "munin.erb"
end
-munin_plugin "memcached_multi_bytes" do
- target "memcached_multi_"
-end
-
-munin_plugin "memcached_multi_commands" do
- target "memcached_multi_"
-end
-
-munin_plugin "memcached_multi_conns" do
- target "memcached_multi_"
-end
-
-munin_plugin "memcached_multi_evictions" do
- target "memcached_multi_"
-end
-
-munin_plugin "memcached_multi_items" do
- target "memcached_multi_"
+%w[bytes commands conns evictions items memory].each do |stat|
+ munin_plugin "memcached_multi_#{stat}" do
+ target "memcached_multi_"
+ end
end
-munin_plugin "memcached_multi_memory" do
- target "memcached_multi_"
+prometheus_exporter "memcached" do
+ port 9150
+ options "--memcached.address=#{node[:memcached][:ip_address]}:#{node[:memcached][:tcp_port]} --memcached.pid-file=/run/memcached/memcached.pid"
end