Skip to main content

Error Counter: Count error (e.g. network error) beyond process boundary, then issue fix command when exceeded threshold.

Project description

error-counter

Error Counter: Count error (e.g. network error) beyond process boundary, then issue fix command when exceeded threshold.

How to use

import requests
from error_counter import Counter

# reboot system when error accumulate 3 times in a low
network_error_counter = Counter("/tmp/network_error.txt")

try:
	r = requests.post(somowhere, somewhat)
except requests.ConnectionError as e:
	network_error_counter.inc_error()

if not r is None:
	# send succeeded.
	network_error_counter.reset_error()

Counter class

class Counter:
  def __init__(self, counterfile, reset_task="sudo reboot", reset_threshold=3):

#  counterfile: file name to use counter. The file is owned jointly by sevelal Counter beyond process boundary.

#  reset_task: shell command which is issued when error count is over the threshold.

#  reset_threshold: Threshold for reset_task.

  def inc_error(self):
  #	Increment error count then issue reset_task if count is over threshold

  def dec_error(self):
  # Decrement error count as 0

  def reset_error(self):
  # Reset error count as 0

downloads

Downloads Downloads Downloads

history

  • 0.1.0 2018.11.18 first version
  • 0.1.1 2018.11.18 fix README

Project details


Download files

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

Files for error-counter, version 0.1.1
Filename, size File type Python version Upload date Hashes
Filename, size error_counter-0.1.1.tar.gz (2.1 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page