README ¶
Sensu Go Load Check
Overview
This plugin provides native load instrumentation including load health and per-core metrics. The sensu-go-load-check
check takes the flags -w
(warning) and -c
(critical) and a desired L1/L5/L15. By default, these are a warning value of 2.75, 2.5, 2.0 and a critical value of 3.5, 3.25, 3.0. This check also outputs data as nagios_perfdata
(for more information, see this Nagios documentation article. This allows for the check to be used as both a status check and a metric check. You can see an example of this in the example check definition below.
Usage Examples
Command line help
The Sensu Go check for system Load usage
Usage:
sensu-go-load-check [flags]
Flags:
-c, --critical string Critical value for system load (default "3.5, 3.25, 3.0")
-h, --help help for sensu-go-load-check
-w, --warning string Warning value for system load. (default "2.75, 2.5, 2.0")
Example Output
./sensu-go-load-check
CheckLoad OK - value = 0.14, 0.10, 0.07 | core_load_1=0.14, core_load_5=0.10, core_load_15=0.07
Configuration
Asset registration
Assets are the best way to make use of this check. If you're not using this plugin as an asset, please consider doing so! If you're using Sensu 5.13 or later, you can install this plugin as an asset by running:
sensuctl asset add Salamek/sensu-go-load-check
Else, you can find this asset on the Bonsai Asset Index.
Asset definition
You can download the asset definition there, or you can do a little bit of copy/pasta and use the one below:
---
type: Asset
api_version: core/v2
metadata:
name: sensu-go-load-check
namespace: CHANGEME
labels: {}
annotations: {}
spec:
url: https://github.com/Salamek/sensu-go-load-check/releases/download/0.0.1/sensu-go-load-check_0.0.1_linux_amd64.tar.gz
sha512:
filters:
- entity.system.os == 'linux'
- entity.system.arch == 'amd64'
NOTE: PLEASE ENSURE YOU UPDATE YOUR URL AND SHA512 BEFORE USING THE ASSET. If you don't, you might just be stuck on a super old version. Don't say I didn't warn you ¯\(ツ)/¯
Check definition
Example Sensu Go definition:
sensu-go-load-check
type: CheckConfig
api_version: core/v2
metadata:
name: sensu-go-load-check
namespace: CHANGEME
spec:
command: sensu-go-load-check
runtime_assets:
- sensu-go-load-check
interval: 60
publish: true
output_metric_format: nagios_perfdata
output_metric_handlers:
- influxdb
handlers:
- slack
subscriptions:
- system
Installation from source and contributing
While it's generally recommended to use an asset, you can download a copy of the handler plugin from releases, or create an executable script from this source.
From the local path of the sensu-go-load-check repository:
sensu-go-load-check
go build -o /usr/local/bin/sensu-go-load-check main.go
To contribute to this repo, see https://github.com/sensu/sensu-go/blob/master/CONTRIBUTING.md.
Additional notes
Supported operating systems
This project uses gopsutil
, and is thus largely dependent on the systems that it supports. For this plugin, the following operating systems are supported:
- Linux
- FreeBSD
- OpenBSD
- Mac OS X
- Windows
- Solaris
Documentation ¶
There is no documentation for this package.