homeostasis


Namehomeostasis JSON
Version 1.0.10 PyPI version JSON
download
home_page
Summaryhealth checks module
upload_time2024-01-07 01:28:13
maintainer
docs_urlNone
author
requires_python>=3.8
licenseGPL 3.0
keywords tests guarantees vows oaths assurances insurances ensurances reliability consistency integrity speed calmness
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            

<pre>


<h1>homeostasis</h1>

	<h2>description</h2>
		This is a module that can reliably
		ascertain the health status of software.
		
		(It's like a testing kit)
		

	<h2>install</h2>
		[SH] pip install homeostasis
	
	<h2>documentation</h2>
		[SH] homeostasis shares 
	
	<h2>homeostasis of homeostasis (the internal homeostasis of the homeostasis module)</h2>
		<p>These checks are run with pypi "body_scan"</p>
		<p>"homeostasis" is a fork of "body_scan"</p>
		<p>("body_scan" checks are written with "unittest")</p>
	
		[SH] homeostasis homeostasis 
	
	<h2>health checks</h2>
		<p>Checks are started simultaneously, unless "--simultaneous no"</p>
	
		<h3>create a status file</h3>
			
			# 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
			}
					
		
		<h3>start from a directory deeper than the status file "status_1.py"</h3>
			[SH] homeostasis status

		<h3>The report then should appear like this:</h3>
		<code>
		
			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/homeostasis/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/homeostasis/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
				}
			}
		
		</code>
	
	
	<h2>advanced configurations</h2>
	<p>
		It's recommended to run homeostasis programmatilly.
		An example of this can be found in the "advanced configurations"
		section of the documentation.
	</p>

	<h2>Contacts</h2>
	<p>status600@proton.me</p>
	
</pre>
		
		
	

            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "homeostasis",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": "",
    "keywords": "tests,guarantees,vows,oaths,assurances,insurances,ensurances,reliability,consistency,integrity,speed,calmness",
    "author": "",
    "author_email": "",
    "download_url": "https://files.pythonhosted.org/packages/21/72/bf9dd6033a8926107883751362d375a9cb0594a36889e001614eddac93b5/homeostasis-1.0.10.tar.gz",
    "platform": null,
    "description": "\n\n<pre>\n\n\n<h1>homeostasis</h1>\n\n\t<h2>description</h2>\n\t\tThis is a module that can reliably\n\t\tascertain the health status of software.\n\t\t\n\t\t(It's like a testing kit)\n\t\t\n\n\t<h2>install</h2>\n\t\t[SH] pip install homeostasis\n\t\n\t<h2>documentation</h2>\n\t\t[SH] homeostasis shares \n\t\n\t<h2>homeostasis of homeostasis (the internal homeostasis of the homeostasis module)</h2>\n\t\t<p>These checks are run with pypi \"body_scan\"</p>\n\t\t<p>\"homeostasis\" is a fork of \"body_scan\"</p>\n\t\t<p>(\"body_scan\" checks are written with \"unittest\")</p>\n\t\n\t\t[SH] homeostasis homeostasis \n\t\n\t<h2>health checks</h2>\n\t\t<p>Checks are started simultaneously, unless \"--simultaneous no\"</p>\n\t\n\t\t<h3>create a status file</h3>\n\t\t\t\n\t\t\t# status_1.py\n\t\t\t\n\t\t\tdef check_1 ():\n\t\t\t\tprint (\"check 1\")\n\t\t\t\t\n\t\t\tdef check_2 ():\n\t\t\t\tprint (\"check 2\")\n\t\t\t\t\n\t\t\tdef check_3 ():\n\t\t\t\traise Exception (\"not 110%\")\n\n\t\t\tchecks = {\n\t\t\t\t\"check 1\": check_1,\n\t\t\t\t\"check 2\": check_2,\n\t\t\t\t\"check 3\": check_3\n\t\t\t}\n\t\t\t\t\t\n\t\t\n\t\t<h3>start from a directory deeper than the status file \"status_1.py\"</h3>\n\t\t\t[SH] homeostasis status\n\n\t\t<h3>The report then should appear like this:</h3>\n\t\t<code>\n\t\t\n\t\t\tpaths: [\n\t\t\t\t{\n\t\t\t\t\t\"path\": \"../status_1.py\",\n\t\t\t\t\t\"empty\": false,\n\t\t\t\t\t\"parsed\": true,\n\t\t\t\t\t\"stats\": {\n\t\t\t\t\t\t\"passes\": 2,\n\t\t\t\t\t\t\"alarms\": 1\n\t\t\t\t\t},\n\t\t\t\t\t\"checks\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"check\": \"check 1\",\n\t\t\t\t\t\t\t\"passed\": true,\n\t\t\t\t\t\t\t\"elapsed\": [\n\t\t\t\t\t\t\t\t4.054199962411076e-05,\n\t\t\t\t\t\t\t\t\"seconds\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"check\": \"check 2\",\n\t\t\t\t\t\t\t\"passed\": true,\n\t\t\t\t\t\t\t\"elapsed\": [\n\t\t\t\t\t\t\t\t1.72930003827787e-05,\n\t\t\t\t\t\t\t\t\"seconds\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"check\": \"check 3\",\n\t\t\t\t\t\t\t\"passed\": false,\n\t\t\t\t\t\t\t\"exception\": \"Exception('not 110%')\",\n\t\t\t\t\t\t\t\"exception trace\": [\n\t\t\t\t\t\t\t\t\"Traceback (most recent call last):\",\n\t\t\t\t\t\t\t\t\"  File \\\"/home/veganecology/.local/lib/python3.11/site-packages/homeostasis/processes/scan/process/keg/check.py\\\", line 68, in start\",\n\t\t\t\t\t\t\t\t\"    checks [ check ] ()\",\n\t\t\t\t\t\t\t\t\"  File \\\"<string>\\\", line 13, in check_3\",\n\t\t\t\t\t\t\t\t\"Exception: not 110%\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t\talarms: [\n\t\t\t\t{\n\t\t\t\t\t\"path\": \"../status_1.py\",\n\t\t\t\t\t\"checks\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"check\": \"check 3\",\n\t\t\t\t\t\t\t\"passed\": false,\n\t\t\t\t\t\t\t\"exception\": \"Exception('not 110%')\",\n\t\t\t\t\t\t\t\"exception trace\": [\n\t\t\t\t\t\t\t\t\"Traceback (most recent call last):\",\n\t\t\t\t\t\t\t\t\"  File \\\"/home/veganecology/.local/lib/python3.11/site-packages/homeostasis/processes/scan/process/keg/check.py\\\", line 68, in start\",\n\t\t\t\t\t\t\t\t\"    checks [ check ] ()\",\n\t\t\t\t\t\t\t\t\"  File \\\"<string>\\\", line 13, in check_3\",\n\t\t\t\t\t\t\t\t\"Exception: not 110%\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t\tstats: {\n\t\t\t\t\"alarms\": 0,\n\t\t\t\t\"empty\": 0,\n\t\t\t\t\"checks\": {\n\t\t\t\t\t\"passes\": 2,\n\t\t\t\t\t\"alarms\": 1\n\t\t\t\t}\n\t\t\t}\n\t\t\n\t\t</code>\n\t\n\t\n\t<h2>advanced configurations</h2>\n\t<p>\n\t\tIt's recommended to run homeostasis programmatilly.\n\t\tAn example of this can be found in the \"advanced configurations\"\n\t\tsection of the documentation.\n\t</p>\n\n\t<h2>Contacts</h2>\n\t<p>status600@proton.me</p>\n\t\n</pre>\n\t\t\n\t\t\n\t\n",
    "bugtrack_url": null,
    "license": "GPL 3.0",
    "summary": "health checks module",
    "version": "1.0.10",
    "project_urls": {
        "GitLab": "https://gitlab.com/reptilian_climates/modules_series_4/homeostasis"
    },
    "split_keywords": [
        "tests",
        "guarantees",
        "vows",
        "oaths",
        "assurances",
        "insurances",
        "ensurances",
        "reliability",
        "consistency",
        "integrity",
        "speed",
        "calmness"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "2172bf9dd6033a8926107883751362d375a9cb0594a36889e001614eddac93b5",
                "md5": "668b759da4df6d5c34bcce1f168b4622",
                "sha256": "2ed55f5a55074f1acc8861e41eb3f9c75db9dc0846aaad7d3eab08d30c34a26c"
            },
            "downloads": -1,
            "filename": "homeostasis-1.0.10.tar.gz",
            "has_sig": false,
            "md5_digest": "668b759da4df6d5c34bcce1f168b4622",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 85976,
            "upload_time": "2024-01-07T01:28:13",
            "upload_time_iso_8601": "2024-01-07T01:28:13.831874Z",
            "url": "https://files.pythonhosted.org/packages/21/72/bf9dd6033a8926107883751362d375a9cb0594a36889e001614eddac93b5/homeostasis-1.0.10.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-01-07 01:28:13",
    "github": false,
    "gitlab": true,
    "bitbucket": false,
    "codeberg": false,
    "gitlab_user": "reptilian_climates",
    "gitlab_project": "modules_series_4",
    "lcname": "homeostasis"
}
        
Elapsed time: 0.15777s