Skip to main content

health checks module

Project description

certificate

Bravo! You have received a Medical Diploma in "volts" from
the Orbital Convergence University International Air and Water
Embassy of the Tangerine Planet ๐ŸŠ.

You are now officially certified to include "volts" in your
practice.


๐Ÿ volts


CircleCI


๐Ÿฅง description

This module can monitor the health status of a python3 .py biome.


โ›ฒ licensing

GNU General Public License v3.0 - GNU Project - Free Software Foundation (FSF)

The complete license is included in the module
in the "./__license/options" directory.


โ›‘๏ธ install

This utilizes:
https://pypi.org/project/xonsh

[xonsh] pip install volts

โš•๏ธ internal status monitor of the module

To monitor the internal status of the "volts" module:

[xonsh] volts internal-status

These checks are run with pypi "body_scan";
"volts" is built from a fork of "body_scan".

The "body_scan" checks are written with "unittest".


๐Ÿ“– documentation

[xonsh] volts help 

This opens a server process that can be opened in a browser.


๐ŸŒŒ Tutorial

The structure

๐Ÿ“ performance
	๐Ÿ“œ status_1.py

The checks

# status_1.py

def check_1 ():
	print ("check 1")
	
def check_2 ():
	print ("check 2")
	
def check_3 ():
	raise Exception ("not 110%")

checks = {
	"check 1": check_1,
	"check 2": check_2,
	"check 3": check_3
}

The procedure

From the performance directory,

[xonsh] volts status

The report

This is the report that is (hopefully) written to the terminal.

paths: [
	{
		"path": "status_1.py",
		"empty": false,
		"parsed": true,
		"stats": {
			"passes": 2,
			"alarms": 1
		},
		"checks": [
			{
				"check": "check 1",
				"passed": true,
				"elapsed": [
					4.054199962411076e-05,
					"seconds"
				]
			},
			{
				"check": "check 2",
				"passed": true,
				"elapsed": [
					1.72930003827787e-05,
					"seconds"
				]
			},
			{
				"check": "check 3",
				"passed": false,
				"exception": "Exception('not 110%')",
				"exception trace": [
					"Traceback (most recent call last):",
					"  File \"/volts/processes/scan/process/keg/check.py\", line 68, in start",
					"    checks [ check ] ()",
					"  File \"<string>\", line 13, in check_3",
					"Exception: not 110%"
				]
			}
		]
	}
]
alarms: [
	{
		"path": "status_1.py",
		"checks": [
			{
				"check": "check 3",
				"passed": false,
				"exception": "Exception('not 110%')",
				"exception trace": [
					"Traceback (most recent call last):",
					"  File \"/volts/processes/scan/process/keg/check.py\", line 68, in start",
					"    checks [ check ] ()",
					"  File \"<string>\", line 13, in check_3",
					"Exception: not 110%"
				]
			}
		]
	}
]
stats: {
	"alarms": 0,
	"empty": 0,
	"checks": {
		"passes": 2,
		"alarms": 1
	}
}

Notes

  • Checks are started simultaneously, unless --simultaneous no

    • [xonsh] volts status --simultaneous no
  • The fractory glob pattern is "**/status_*.py", but can be changed with --glob-string

    • [xonsh] volts status --glob-string "**/performance_*.py"

Advanced Tutorial

It's recommended to run volts in a .py script.

An example of this can be found in the "_book/advanced tutorial"
section of the documentation.


๐Ÿ“ก Contacts

Bryan@Status600.com

๐ŸŒ‘ ๐ŸŒ˜ ๐ŸŒ— ๐ŸŒ– ๐ŸŒ• ๐ŸŒ” ๐ŸŒ“ ๐ŸŒ’ ๐ŸŒ‘

๐ŸŒ‘ ๐ŸŒ’ ๐ŸŒ“ ๐ŸŒ” ๐ŸŒ• ๐ŸŒ– ๐ŸŒ— ๐ŸŒ˜ ๐ŸŒ‘

๐ŸŒ‘ ๐ŸŒ˜ ๐ŸŒ— ๐ŸŒ– ๐ŸŒ• ๐ŸŒ” ๐ŸŒ“ ๐ŸŒ’ ๐ŸŒ‘

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

volts-1.1.1.tar.gz (139.3 kB view hashes)

Uploaded Source

Built Distribution

volts-1.1.1-py3-none-any.whl (258.5 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page