diff --git a/chef/cookbooks/collectd/files/default/kairosdb_writer.py b/chef/cookbooks/collectd/files/default/kairosdb_writer.py index ecbc5c3..3c19d9b 100644 --- a/chef/cookbooks/collectd/files/default/kairosdb_writer.py +++ b/chef/cookbooks/collectd/files/default/kairosdb_writer.py @@ -21,9 +21,6 @@ from traceback import format_exc host = None port = None -differentiate_values = False -differentiate_values_over_time = False -lowercase_metric_names = False prefix = None types = {} postfix = None @@ -88,9 +85,9 @@ def sanitize_field(field): return field def kairosdb_config(c): - global host, port, differentiate_values, differentiate_values_over_time, \ - prefix, postfix, host_separator, metric_separator, \ - lowercase_metric_names, protocol, tags + global host, port, prefix, postfix, host_separator, \ + metric_separator, lowercase_metric_names, protocol, \ + tags for child in c.children: if child.key == 'KairosDBHost': @@ -100,14 +97,6 @@ def kairosdb_config(c): elif child.key == 'TypesDB': for v in child.values: kairosdb_parse_types_file(v) - # DeriveCounters maintained for backwards compatibility - elif child.key == 'DeriveCounters': - differentiate_values = True - elif child.key == 'DifferentiateCounters': - differentiate_values = True - elif child.key == 'DifferentiateCountersOverTime': - differentiate_values = True - differentiate_values_over_time = True elif child.key == 'LowercaseMetricNames': lowercase_metric_names = True elif child.key == 'MetricPrefix': @@ -141,8 +130,6 @@ def kairosdb_init(): d = { 'host': host, 'port': port, - 'differentiate_values': differentiate_values, - 'differentiate_values_over_time': differentiate_values_over_time, 'lowercase_metric_names': lowercase_metric_names, 'sock': None, 'lock': threading.Lock(), @@ -253,39 +240,7 @@ def kairosdb_write(v, data=None): metric = '.'.join(path_fields) - # perform data normalization for COUNTER and DERIVE points - if (isinstance(value, (float, int)) and - data['differentiate_values'] and - (ds_type == 'COUNTER' or ds_type == 'DERIVE')): - # we have an old value - if metric in data['values']: - old_time, old_value = data['values'][metric] - - # overflow - if value < old_value: - v_type_max = v_type[i][3] - if v_type_max == 'U': - # this is funky. pretend as if this is the first data point - new_value = None - else: - v_type_min = str_to_num(v_type[i][2]) - v_type_max = str_to_num(v_type[i][3]) - new_value = v_type_max - old_value + value - v_type_min - else: - new_value = value - old_value - - if (isinstance(new_value, (float, int)) and - data['differentiate_values_over_time']): - interval = time - old_time - if interval < 1: - interval = 1 - new_value = new_value / interval - - # update previous value - data['values'][metric] = ( time, value ) - - else: - new_value = value + new_value = value if new_value is not None: line = 'put %s %d %f %s' % ( metric, time, new_value, tags) diff --git a/chef/cookbooks/collectd/recipes/kairosdb.rb b/chef/cookbooks/collectd/recipes/kairosdb.rb index 3fd0e46..563431e 100644 --- a/chef/cookbooks/collectd/recipes/kairosdb.rb +++ b/chef/cookbooks/collectd/recipes/kairosdb.rb @@ -32,10 +32,8 @@ collectd_python_plugin "kairosdb_writer" do opts = {"KairosDBHost"=>node['collectd']['server']['host'], "KairosDBPort"=>node['collectd']['server']['port'], "KairosDBProtocol"=>node['collectd']['server']['protocol'], - "LowercaseMetricNames"=>"true", "Tags" => "host=#{node['fqdn']}\" \"role=OSROLE\" \"location=China.Beijing.TsingHua\" \"cluster=#{node['cluster']}", "TypesDB" => node['collectd']['types_db'], - "DifferentiateCountersOverTime" => true } options(opts) end diff --git a/chef/cookbooks/collectd/recipes/rabbitmq.rb b/chef/cookbooks/collectd/recipes/rabbitmq.rb index 8935568..b174097 100644 --- a/chef/cookbooks/collectd/recipes/rabbitmq.rb +++ b/chef/cookbooks/collectd/recipes/rabbitmq.rb @@ -31,13 +31,13 @@ cookbook_file File.join(node['collectd']['plugin_dir'], "rabbitmq_info.py") do notifies :restart, resources(:service => "collectd") end -node.override["collectd"]["mq"]["vhost"] = node["mq"]["vhost"] +node.override["collectd"]["mq"]["vhost"] = node["openstack"]["mq"]["vhost"] collectd_python_plugin "rabbitmq_info" do opts = { "Vhost" => node["collectd"]["mq"]["vhost"], "Api" => "http://localhost:15672/api/queues", - "User" => "#{node["mq"]["user"]}", - "Pass" => "#{node["mq"]["password"]}" + "User" => "#{node["openstack"]["mq"]["user"]}", + "Pass" => "#{node["openstack"]["mq"]["password"]}" } options(opts) end diff --git a/chef/roles/compass-base.json b/chef/roles/compass-base.json index 1444135..0fc41b5 100644 --- a/chef/roles/compass-base.json +++ b/chef/roles/compass-base.json @@ -8,7 +8,7 @@ }, "chef_type": "role", "run_list": [ - "recipe[collectd]" + "recipe[collectd::client]" ], "env_run_lists": { }