Browse Source

Merge pull request #25 from elemoine/stacklight-netlink

Use netlink collectd plugin instead of interface
tags/2016.12
Éric Lemoine 8 years ago
parent
commit
4e42b3c238
4 changed files with 36 additions and 3 deletions
  1. +17
    -0
      _modules/netlink.py
  2. +10
    -0
      linux/files/collectd_netlink.conf
  3. +1
    -1
      linux/map.jinja
  4. +8
    -2
      linux/meta/collectd.yml

+ 17
- 0
_modules/netlink.py View File

@@ -0,0 +1,17 @@
# -*- coding: utf-8 -*-

import re

_alphanum_re = re.compile(r'^[a-z0-9]+$')
_lo_re = re.compile(r'^lo$')


def _filter(interface):
return _alphanum_re.match(interface) and not _lo_re.match(interface)


def ls():
"""
Provide a list of network interfaces.
"""
return filter(_filter, __salt__['grains.get']('ip_interfaces', {}).keys())

+ 10
- 0
linux/files/collectd_netlink.conf View File

@@ -0,0 +1,10 @@
<LoadPlugin netlink>
Globals false
</LoadPlugin>

<Plugin netlink>
{%- for interface_name in plugin.get('interfaces', []) %}
VerboseInterface "{{ interface_name }}"
{%- endfor %}
IgnoreSelected {{ plugin.get('ignore_selected', False)|lower }}
</Plugin>

+ 1
- 1
linux/map.jinja View File

@@ -15,7 +15,7 @@
'doc_validity_pkgs': ['python-yaml'],
},
'Debian': {
'pkgs': ['python-apt','vim-nox', 'apt-transport-https'],
'pkgs': ['python-apt','vim-nox', 'apt-transport-https', 'libmnl0'],
'utc': true,
'user': {},
'group': {},

+ 8
- 2
linux/meta/collectd.yml View File

@@ -1,6 +1,12 @@
local_plugin:
linux_network_interface:
plugin: interface
linux_network_netlink:
plugin: netlink
template: linux/files/collectd_netlink.conf
ignore_selected: false
interfaces:
{%- for interface_name in salt['netlink.ls']() %}
- {{ interface_name }}
{%- endfor %}
linux_system_cpu:
plugin: cpu
linux_system_entropy:

Loading…
Cancel
Save