{"repo":"NETWAYS/go-check","free":true,"listed":false,"github":"https://github.com/NETWAYS/go-check","clone":"git clone https://github.com/NETWAYS/go-check.git","description":"A Golang library to create monitoring plugins","language":"Go","stars":15,"topics":["golang","icinga","monitoring","plugin"],"license":"GPL-2.0","category":"analytics","readme_excerpt":"go-check ======== go-check is a Golang library to help with development of monitoring plugins for tools like Icinga. See the documentation on pkg.go.dev for more details and examples. Usage Simple Example With the NewConfig constructor you can quickly create a CLI monitoring plugin: However, the go-check library does not require you to use the Config type. Return Codes The library provides predefined return or exit codes: To convert an integer or string into an exit code See also: https://www.monitoring-plugins.org/doc/guidelines.html#AEN74 Exit The Exit function can be used to cause an exit with the given status code. The ExitWithPerfdata function can be used to include performance data in the output. The ExitError function can be used to cause an exit with the given error. You can use defer check.CatchPanic() to ensure a check plugin will always exit with a proper code, even if the code panics. Timeout Handling HandleTimeout is a helper for a goroutine, to wait for signals and timeout, and exit with a proper code. Thresholds Threshold objects represent monitoring plugin thresholds that have methods to evaluate if a given input is within the range. They can be created with the ParseThreshold parser. See also: https://www.monitoring-plugins.org/doc/guidelines.html#THRESHOLDFORMAT Performance data The Perfdata object represents monitoring plugin performance data that relates to the actual execution of a host or service check. See also: https://www.monitoring-plugins.org/doc/gu","default_branch":null,"files":null,"tree":[],"storefront":"/r/NETWAYS","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/NETWAYS/go-check/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}