Skip to main content

health checks module

Project description


Bravo! You have received a Medical Diploma in Mergers from
the Orbital Convergence University International Air and Water Embassy of the Tangerine Planet.

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


mergers


description

This is a module that can reliably ascertain the health status of software.

(It's like a testing framework)


install

[ZSH] pip install mergers


documentation (this opens a server process that sends HTML)

[ZSH] mergers shares


internal status tests of the module

[ZSH] mergers internal-status

These checks are run with pypi "body_scan"
"mergers" is built from a fork of "body_scan"
("body_scan" checks are written with "unittest")


Tutorial

  • Checks are started simultaneously, unless "--simultaneous no"

Create a status file (glob pattern "**/status_*.py").

(The glob pattern can be modified with the progammatic python3 interface)

# 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
}

from a directory deeper than the status file "status_1.py"

[ZSH] mergers status

This is the equivalent of: [ZSH] mergers status --glob-string "**/status_*.py"

The report then should appear like this

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 \"/home/veganecology/.local/lib/python3.11/site-packages/mergers/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 \"/home/veganecology/.local/lib/python3.11/site-packages/mergers/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
	}
}

Advanced Tutorial

It's recommended to run mergers programmatilly.

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


Contacts

bgrace2468@pm.me

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

mergers-1.0.8.tar.gz (76.7 kB view details)

Uploaded Source

File details

Details for the file mergers-1.0.8.tar.gz.

File metadata

  • Download URL: mergers-1.0.8.tar.gz
  • Upload date:
  • Size: 76.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for mergers-1.0.8.tar.gz
Algorithm Hash digest
SHA256 d5a39241779d08cd7c5a0ceda07906f5da26b19977f04ab39d652f791b040b3d
MD5 eef15b88d80ab464693361ab0fd85fe7
BLAKE2b-256 7eca103e69d19d5e7a26531ab338c027e2d59e85007c54806abcda8ee37e2dff

See more details on using hashes here.

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