pingertron


Namepingertron JSON
Version 0.3.0 PyPI version JSON
download
home_pagehttps://github.com/micktwomey/pingertron
SummaryPing Hosts and URLs and keep stats on successes and failures
upload_time2023-07-17 15:21:22
maintainer
docs_urlNone
authorMichael Twomey
requires_python>=3.11,<4.0
licenseMIT
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Ping Hosts and URLs and keep stats on successes and failures

Run this as a daemon on your box and check in to see if there are problems.

Intended to be a slightly different approach to blackbox_exporter.

## Installing

```sh
pip install pingertron
```

## Running

```sh
pingertron probes.yaml
```

ICMP usually needs root access to send packets:

```sh
sudo pingertron probes.yaml
```

There is an example [probes.yaml](examples/probes.yaml) you can use as a basis for your own.

## probes.yaml

Specify one or more probes to run using probes.yaml.

This file is re-read on each evaluation cycle, so you can update it without restarting the process.

Example probes.yaml:

```yaml
interval_seconds: 60  # seconds between each batch of probes being sent

probes:
- protocol: http  # one of icmp or http
  description: my probe  # optional description
  # probe specific properties
# HTTP Probe
- protocol: http
  # description: my HTTP probe  # optional description
  url: https://example.com/  # URL to probe, http or https
  method: GET  # HTTP method to use
  expected_status_code: 200  # HTTP status code you expect, usually 200
# ICMP Probe
- protocol: icmp
  # description: my ICMP probe  # optional description
  hostname: 10.0.0.1  # Hostname or IP to ping.
```

The canonical definition of what goes into this file can be found in [probes_config.py](pingertron/probes_config.py).

## Developing

### devenv

If you use [devenv](https://devenv.sh):

```sh
direnv allow .
```

### poetry

If you use [poetry](https://python-poetry.org):

```sh
poetry install
poetry run pingertron
```

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/micktwomey/pingertron",
    "name": "pingertron",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.11,<4.0",
    "maintainer_email": "",
    "keywords": "",
    "author": "Michael Twomey",
    "author_email": "mick@twomeylee.name",
    "download_url": "https://files.pythonhosted.org/packages/cb/42/5b2e15d4e350ffca82af86b2aaeb449fd756efdc9121acee2323a9e017d7/pingertron-0.3.0.tar.gz",
    "platform": null,
    "description": "# Ping Hosts and URLs and keep stats on successes and failures\n\nRun this as a daemon on your box and check in to see if there are problems.\n\nIntended to be a slightly different approach to blackbox_exporter.\n\n## Installing\n\n```sh\npip install pingertron\n```\n\n## Running\n\n```sh\npingertron probes.yaml\n```\n\nICMP usually needs root access to send packets:\n\n```sh\nsudo pingertron probes.yaml\n```\n\nThere is an example [probes.yaml](examples/probes.yaml) you can use as a basis for your own.\n\n## probes.yaml\n\nSpecify one or more probes to run using probes.yaml.\n\nThis file is re-read on each evaluation cycle, so you can update it without restarting the process.\n\nExample probes.yaml:\n\n```yaml\ninterval_seconds: 60  # seconds between each batch of probes being sent\n\nprobes:\n- protocol: http  # one of icmp or http\n  description: my probe  # optional description\n  # probe specific properties\n# HTTP Probe\n- protocol: http\n  # description: my HTTP probe  # optional description\n  url: https://example.com/  # URL to probe, http or https\n  method: GET  # HTTP method to use\n  expected_status_code: 200  # HTTP status code you expect, usually 200\n# ICMP Probe\n- protocol: icmp\n  # description: my ICMP probe  # optional description\n  hostname: 10.0.0.1  # Hostname or IP to ping.\n```\n\nThe canonical definition of what goes into this file can be found in [probes_config.py](pingertron/probes_config.py).\n\n## Developing\n\n### devenv\n\nIf you use [devenv](https://devenv.sh):\n\n```sh\ndirenv allow .\n```\n\n### poetry\n\nIf you use [poetry](https://python-poetry.org):\n\n```sh\npoetry install\npoetry run pingertron\n```\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Ping Hosts and URLs and keep stats on successes and failures",
    "version": "0.3.0",
    "project_urls": {
        "Homepage": "https://github.com/micktwomey/pingertron",
        "Repository": "https://github.com/micktwomey/pingertron"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ab3adedb2edbbeaaec1a43c8b1cf280f2886708a19c70ded213978649f89fd9e",
                "md5": "7297aa07dbf6ea646b396d7ef3a4d421",
                "sha256": "89cec8095b24a73697524518f1d2eba121c5d2bbec78b778a058aaec60a745c4"
            },
            "downloads": -1,
            "filename": "pingertron-0.3.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "7297aa07dbf6ea646b396d7ef3a4d421",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.11,<4.0",
            "size": 6502,
            "upload_time": "2023-07-17T15:21:20",
            "upload_time_iso_8601": "2023-07-17T15:21:20.024359Z",
            "url": "https://files.pythonhosted.org/packages/ab/3a/dedb2edbbeaaec1a43c8b1cf280f2886708a19c70ded213978649f89fd9e/pingertron-0.3.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "cb425b2e15d4e350ffca82af86b2aaeb449fd756efdc9121acee2323a9e017d7",
                "md5": "1a8e461842c42b96319b109c2cedf1ac",
                "sha256": "e8a7a801b4b2371a290b27bb31acbfb9e817f971cad91d809cf9d39d9590a511"
            },
            "downloads": -1,
            "filename": "pingertron-0.3.0.tar.gz",
            "has_sig": false,
            "md5_digest": "1a8e461842c42b96319b109c2cedf1ac",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.11,<4.0",
            "size": 5159,
            "upload_time": "2023-07-17T15:21:22",
            "upload_time_iso_8601": "2023-07-17T15:21:22.236975Z",
            "url": "https://files.pythonhosted.org/packages/cb/42/5b2e15d4e350ffca82af86b2aaeb449fd756efdc9121acee2323a9e017d7/pingertron-0.3.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-07-17 15:21:22",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "micktwomey",
    "github_project": "pingertron",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "pingertron"
}
        
Elapsed time: 0.13650s