定制 uptime-uat/monitoring 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

uptime-uat/monitoring

Composer 安装命令:

composer require uptime-uat/monitoring

包简介

Laravel package for uptime monitoring and API logging

README 文档

README

A comprehensive Laravel package for monitoring API responses and route access, designed to work with the Uptime Monitoring platform.

Features

  • API Response Logging: Track API response times, status codes, and errors
  • Route Access Monitoring: Monitor web route access patterns and performance
  • Security: Automatic sanitization of sensitive data (passwords, tokens, etc.)
  • Flexible Configuration: Customizable logging rules and exclusions
  • Client SDK: Easy integration with remote monitoring platforms
  • Queue Support: Optional queued logging for better performance

Installation

  1. Install the package via Composer:
composer require uptime-uat/monitoring
  1. Publish the configuration and migrations:
php artisan monitoring:install
  1. Run the migrations:
php artisan migrate
  1. Configure your monitoring settings in config/monitoring.php

Configuration

Basic Configuration

// config/monitoring.php
return [
    'enabled' => true,
    'log_errors_only' => false,
    'excluded_routes' => [
        'monitoring/*',
        'health',
    ],
];

Environment Variables

MONITORING_ENABLED=true
MONITORING_LOG_ERRORS_ONLY=false
MONITORING_QUEUE_LOGGING=false

Usage

Middleware

Add the monitoring middleware to your routes:

// In your routes/web.php
Route::middleware(['monitoring'])->group(function () {
    // Your routes here
});

Or apply it globally in your bootstrap/app.php:

->withMiddleware(function (Middleware $middleware) {
    $middleware->web(append: [
        \Uptime\Monitoring\Middleware\MonitoringMiddleware::class,
    ]);
})

Client SDK

For sending data to a remote monitoring platform:

use Uptime\Monitoring\Client\MonitoringClient;

$client = new MonitoringClient(
    baseUrl: 'https://your-monitoring-platform.com',
    apiKey: 'your-api-key'
);

// Log API response
$client->logApiResponse([
    'method' => 'GET',
    'url' => 'https://api.example.com/users',
    'status_code' => 200,
    'response_time_ms' => 150.5,
    // ... other data
]);

API Endpoints

The package provides API endpoints for receiving monitoring data:

  • POST /api/log-api-response - Log API responses
  • POST /api/log-route-access - Log route access
  • GET /api/stats - Get project statistics
  • GET /api/health - Health check

All API endpoints require authentication via the X-API-Key header.

Security

The package automatically sanitizes sensitive data:

  • Headers: Authorization, Cookie, X-API-Key, etc.
  • Fields: Password, Token, Secret, Key, etc.
  • Response Bodies: Limited to prevent logging large responses

Queue Support

For better performance, you can enable queued logging:

// config/monitoring.php
'queue_logging' => true,
'queue_name' => 'monitoring',

License

This package is open-sourced software licensed under the MIT license.

Support

For support, please contact us at support@uptimemonitor.com or visit our documentation.

统计信息

  • 总下载量: 0
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-09-20