rakshazi / fping
There is no license information available for the latest version (1.1.1) of this package.
Simple microservice / function to check target health
1.1.1
2018-04-11 08:34 UTC
Requires
- php: ^7.1
- ext-curl: *
- ext-json: *
This package is auto-updated.
Last update: 2024-10-13 21:50:35 UTC
README
Simple microservice / function to check target server, site, etc status.
Table of Contents
Usage
Docker
docker run -d -p 8080:8080 rakshazi/fping curl -X POST -d "type=HTTP&address=https://google.com" localhost:8080 #response {"status_code":200,"time":0.448615,"should_contain":true,"should_not_contain":true,"status":true}
OpenFaaS
Coming soon...
Composer (optional)
If you want to use fping "as-is", without docker, you can install it with composer:
composer require rakshazi/fping
API
Request
fping built on top of OpenFaaS Watchdog to provide simple API and integration with OpenFaaS.
To call fping, you should send POST request to fping address (in example above - localhost:8080) with following body structure:
json:
{ "type": "Check type", "address": "Target server/site address", "timeout": 5, //integer timeout in seconds "optional": {} //optional params, specific for each check type }
raw form:
type=Check type&address=Target address&timeout=5&optional[param1]=val1&optional[param2]=val2
Response
json:
{ "status_code":200, //HTTP response status code "time":448, //response time in ms "should_contain":true, //optional for HTTP "should_not_contain":true, //optional for HTTP "status":true //check status - is target up or down }
Check types
HTTP
Check HTTP(-s) targets.
optional params:
should_contain
- Check response body for that string, check passed if string was foundshould_not_contain
- Check response body for that string, check failed if string was found
Example:
curl -X POST -d "type=HTTP&address=https://example.com&timeout=5&optional[should_contain]=healthy&optional[should_not_contain]=error" localhost:8080