diff --git a/net-mgmt/collectd/src/opnsense/mvc/app/controllers/OPNsense/Collectd/forms/general.xml b/net-mgmt/collectd/src/opnsense/mvc/app/controllers/OPNsense/Collectd/forms/general.xml index 3e588da00..1b60bf26f 100644 --- a/net-mgmt/collectd/src/opnsense/mvc/app/controllers/OPNsense/Collectd/forms/general.xml +++ b/net-mgmt/collectd/src/opnsense/mvc/app/controllers/OPNsense/Collectd/forms/general.xml @@ -85,16 +85,22 @@ general.p_graphite_prefix - + text Prefix to set before the hostname. If it ends with a dot it creates an own directory. general.p_graphite_postfix - + text String to set after the hostname. For compatibility reason default is collectd, but you can also simply remove it. + + general.p_graphite_separate_instances + + checkbox + Enabling sends the plugin instance and type instance to Graphite as separate path components: host.cpu.0.cpu.idle. Disabling sends the plugin and plugin instance as one path component and type and type instance as another component: host.cpu-0.cpu-idle. + general.p_contextswitch_enable @@ -107,6 +113,24 @@ checkbox The CPU plugin collects the amount of time spent by the CPU in various states, most notably executing user code, executing system code, waiting for IO-operations and being idle. + + general.p_cpu_percent + + checkbox + When set, report CPU usage in percent instead of units of kernel time. + + + general.p_cpu_aggregates + + checkbox + Send aggregate values for CPU metrics in addition to values for individual cores. + + + general.p_disk_enable + + checkbox + The Disk plugin collects disk I/O information, i.e. read and write operations per second. + general.p_df_enable @@ -129,7 +153,13 @@ general.p_memory_enable checkbox - The Memory plugin collects physical memory utilization (Used, buffered, cached and free). + The Memory plugin collects physical memory utilization (used, buffered, cached and free). + + + general.p_swap_enable + + checkbox + The Swap plugin collects swap space utilization (used and free). general.p_processes_enable diff --git a/net-mgmt/collectd/src/opnsense/mvc/app/models/OPNsense/Collectd/General.xml b/net-mgmt/collectd/src/opnsense/mvc/app/models/OPNsense/Collectd/General.xml index 9dd07f44a..960a6ed4e 100644 --- a/net-mgmt/collectd/src/opnsense/mvc/app/models/OPNsense/Collectd/General.xml +++ b/net-mgmt/collectd/src/opnsense/mvc/app/models/OPNsense/Collectd/General.xml @@ -38,18 +38,18 @@ - N - /^([0-9a-zA-Z._\-]){1,128}$/u - - - - N - /^([0-9a-zA-Z._\-\!\$\%\/\(\)\+\#\=]){1,128}$/u - - - 0 - N - + N + /^([0-9a-zA-Z._\-]){1,128}$/u + + + + N + /^([0-9a-zA-Z._\-\!\$\%\/\(\)\+\#\=]){1,128}$/u + + + 0 + N + 0 N @@ -77,6 +77,10 @@ collectd N + + 0 + N + 1 N @@ -85,6 +89,18 @@ 1 N + + 1 + N + + + 1 + N + + + 1 + N + 1 N @@ -101,6 +117,10 @@ 1 N + + 1 + N + 1 N diff --git a/net-mgmt/collectd/src/opnsense/service/templates/OPNsense/Collectd/collectd.conf b/net-mgmt/collectd/src/opnsense/service/templates/OPNsense/Collectd/collectd.conf index b91d93af7..15af1eae7 100644 --- a/net-mgmt/collectd/src/opnsense/service/templates/OPNsense/Collectd/collectd.conf +++ b/net-mgmt/collectd/src/opnsense/service/templates/OPNsense/Collectd/collectd.conf @@ -1,5 +1,4 @@ {% if helpers.exists('OPNsense.collectd.general.enabled') and OPNsense.collectd.general.enabled == '1' %} - {% if helpers.exists('OPNsense.collectd.general.hostname') and OPNsense.collectd.general.hostname != '' %} Hostname "{{ OPNsense.collectd.general.hostname }}" {% else %} @@ -12,12 +11,9 @@ FQDNLookup true Interval {{ OPNsense.collectd.general.interval }} {% endif %} - - - LoadPlugin syslog - LogLevel err + LogLevel err {% if helpers.exists('OPNsense.collectd.general.p_contextswitch_enable') and OPNsense.collectd.general.p_contextswitch_enable == '1' %} @@ -26,6 +22,12 @@ LoadPlugin contextswitch {% if helpers.exists('OPNsense.collectd.general.p_cpu_enable') and OPNsense.collectd.general.p_cpu_enable == '1' %} LoadPlugin cpu {% endif %} +{% if helpers.exists('OPNsense.collectd.general.p_cpu_aggregates') and OPNsense.collectd.general.p_cpu_aggregates == '1' %} +LoadPlugin aggregation +{% endif %} +{% if helpers.exists('OPNsense.collectd.general.p_disk_enable') and OPNsense.collectd.general.p_disk_enable == '1' %} +LoadPlugin disk +{% endif %} {% if helpers.exists('OPNsense.collectd.general.p_df_enable') and OPNsense.collectd.general.p_df_enable == '1' %} LoadPlugin df {% endif %} @@ -38,6 +40,9 @@ LoadPlugin load {% if helpers.exists('OPNsense.collectd.general.p_memory_enable') and OPNsense.collectd.general.p_memory_enable == '1' %} LoadPlugin memory {% endif %} +{% if helpers.exists('OPNsense.collectd.general.p_swap_enable') and OPNsense.collectd.general.p_swap_enable == '1' %} +LoadPlugin swap +{% endif %} {% if helpers.exists('OPNsense.collectd.general.p_network_enable') and OPNsense.collectd.general.p_network_enable == '1' %} LoadPlugin network {% endif %} @@ -65,19 +70,19 @@ LoadPlugin write_graphite {% if helpers.exists('OPNsense.collectd.general.p_network_host') and OPNsense.collectd.general.p_network_host != '' %} {% if helpers.exists('OPNsense.collectd.general.p_network_port') and OPNsense.collectd.general.p_network_port != '' %} - + {% if helpers.exists('OPNsense.collectd.general.p_network_username') and OPNsense.collectd.general.p_network_username != '' %} - Username "{{ OPNsense.collectd.general.p_network_username }}" + Username "{{ OPNsense.collectd.general.p_network_username }}" {% endif %} {% if helpers.exists('OPNsense.collectd.general.p_network_password') and OPNsense.collectd.general.p_network_password != '' %} - Password "{{ OPNsense.collectd.general.p_network_password }}" + Password "{{ OPNsense.collectd.general.p_network_password }}" {% endif %} {% if helpers.exists('OPNsense.collectd.general.p_network_username') and OPNsense.collectd.general.p_network_username != '' %} {% if helpers.exists('OPNsense.collectd.general.p_network_encryption') and OPNsense.collectd.general.p_network_encryption == '1' %} - SecurityLevel Encrypt + SecurityLevel Encrypt {% endif %} {% endif %} - + {% endif %} {% endif %} @@ -101,11 +106,15 @@ LoadPlugin write_graphite {% endif %} {% if helpers.exists('OPNsense.collectd.general.p_graphite_postfix') and OPNsense.collectd.general.p_graphite_postfix != '' %} Postfix "{{ OPNsense.collectd.general.p_graphite_postfix }}" +{% endif %} +{% if helpers.exists('OPNsense.collectd.general.p_graphite_separate_instances') and OPNsense.collectd.general.p_graphite_separate_instances == '1' %} + SeparateInstances true +{% else %} + SeparateInstances false {% endif %} StoreRates true AlwaysAppendDS false EscapeCharacter "_" - SeparateInstances false PreserveSeparator false DropDuplicateFields false @@ -113,4 +122,28 @@ LoadPlugin write_graphite {% endif %} {% endif %} + +{% if helpers.exists('OPNsense.collectd.general.p_cpu_percent') and OPNsense.collectd.general.p_cpu_percent == '1' %} + ValuesPercentage true +{% else %} + ValuesPercentage false +{% endif %} + + +{% if helpers.exists('OPNsense.collectd.general.p_cpu_aggregates') and OPNsense.collectd.general.p_cpu_aggregates == '1' %} + + + Plugin "cpu" + Type "percent" + GroupBy "Host" + GroupBy "TypeInstance" + CalculateNum false + CalculateSum true + CalculateAverage true + CalculateMinimum false + CalculateMaximum false + CalculateStddev false + + +{% endif %} {% endif %}