jesugmz/http-health-check

用 PHP 编写的简单 HTTP 健康检查

v1.0.0 2018-07-20 00:46 UTC

This package is auto-updated.

Last update: 2024-09-21 21:16:54 UTC


README

Minimum PHP Version CircleCI

HTTP 健康检查是一个基于 PHP 的简单 HTTP 健康检查,它构建在 Guzzle 之上。

  • 通过 PHP 应用程序按状态码和响应体内容轻松检查 HTTP 服务状态
  • 授予有限的 HTTP 请求超时(Guzzle 不支持)
  • 默认为积极行为。如果没有提供条件,一旦请求可以成功发出,健康状态将被视为 健康 - 无连接问题

安装

通过 Composer 安装最新版本

$ composer require jesugmz/http-health-check

用法

HTTP 健康检查将对给定的端点 URL 执行 GET 请求,并可以在响应中检查以下条件

  • HTTP 状态码:表示为 status_code_equals_to
  • 响应体内容:出现在响应体中的纯文本,表示为 body_contains
use HttpHealthCheck\HttpHealthCheck;

$endpointUrl = 'https://github.com/jesuGMZ/';
$conditions = [
    'status_code_equals_to' => 200,
    'body_contains'         => 'jesuGMZ',
];

$check = new HttpHealthCheck($endpointUrl, $conditions);

var_dump($check->isHealthy());

它还允许使用 Guzzle 请求选项 参数

use HttpHealthCheck\HttpHealthCheck;

$endpointUrl = 'https://mdn.github.io/learning-area/javascript/oojs/json/superheroes.json';
$conditions = [
    'status_code_equals_to' => 200,
    'body_contains'         => 'Super hero squad',
];
$options = [
    'headers' => [
        'User-Agent' => 'My custom user agent',
        'Accept'     => 'application/json',
    ]
];

$check = new HttpHealthCheck($endpointUrl, $conditions, $options);

var_dump($check->isHealthy());