tourze/workerman-file-monitor
最新稳定版本:0.0.1
Composer 安装命令:
composer require tourze/workerman-file-monitor
包简介
Workerman文件监听服务
README 文档
README
A file monitoring service for Workerman projects, extracted from webman framework.
Features
- Monitor file changes in specified directories
- Support multiple file extensions
- Auto reload when files are modified
- Memory usage monitoring
- PSR-3 logger support
- Cross-platform support (Linux/Unix/Windows)
Installation
composer require tourze/workerman-file-monitor
Quick Start
<?php use Tourze\Workerman\FileMonitor\FileMonitorWorker; use Workerman\Worker; // Create your Workerman worker $worker = new Worker('http://0.0.0.0:8080'); // Initialize file monitor new FileMonitorWorker( monitor_dir: '/path/to/your/code', // Directory to monitor monitor_extensions: ['php'], // File extensions to monitor memory_limit: '512M', // Optional: memory limit logger: $logger // Optional: PSR-3 logger ); Worker::runAll();
Dependencies
- PHP >= 8.1
- ext-posix
- psr/log ^3|^2|^1
- workerman/workerman ^5.1
Configuration
monitor_dir: Directory or array of directories to monitormonitor_extensions: Array of file extensions to monitor (e.g., ['php', 'js'])memory_limit: Memory limit for worker processes (default: 80% of php.ini memory_limit)logger: PSR-3 compatible logger instance
Advanced Usage
Monitoring Multiple Directories
$monitor = new FileMonitorWorker( monitor_dir: ['/path/to/dir1', '/path/to/dir2'], monitor_extensions: ['php', 'html', 'js'] );
Using Custom Memory Limits
The memory_limit parameter accepts values in the format of '512M', '1G', etc. If not specified, it uses 80% of the value in php.ini.
Working with Loggers
The monitor works with any PSR-3 compatible logger:
$logger = new YourLogger(); $monitor = new FileMonitorWorker( monitor_dir: '/path/to/your/code', monitor_extensions: ['php'], logger: $logger );
Notes
- File monitoring is disabled in daemon mode
- Requires
exec()function to be enabled in PHP - Memory monitoring is only available on Linux/Unix systems
- Minimum memory limit is 30MB
Contributing
Please see CONTRIBUTING.md for details.
License
The MIT License (MIT). Please see License File for more information.
统计信息
- 总下载量: 307
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 0
- 依赖项目数: 1
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-03-24