Süreç İzleme
Webman, iki özelliği destekleyen bir monitor izleme sürecine sahiptir:
- Dosya güncellemelerini izleme ve yeni iş kodlarını otomatik olarak yeniden yükleme (genellikle geliştirme sırasında kullanılır)
- Tüm süreçlerin bellek kullanımını izleme; eğer bir süreç
php.ini
içindekimemory_limit
sınırını aşmaya yaklaşıyorsa, bu süreci otomatik olarak güvenli bir şekilde yeniden başlatma (işi etkilemez)
İzleme Yapılandırması
Yapılandırma dosyası config/process.php
içindeki monitor
yapılandırması
global $argv;
return [
// Dosya güncelleme tespiti ve otomatik yeniden yükleme
'monitor' => [
'handler' => process\Monitor::class,
'reloadable' => false,
'constructor' => [
// Bu dizinleri izleyin
'monitorDir' => array_merge([ // Hangi dizinlerdeki dosyaların izlenmesi gerektiği
app_path(),
config_path(),
base_path() . '/process',
base_path() . '/support',
base_path() . '/resource',
base_path() . '/.env',
], glob(base_path() . '/plugin/*/app'), glob(base_path() . '/plugin/*/config'), glob(base_path() . '/plugin/*/api')),
// Bu uzantılara sahip dosyalar izlenecek
'monitorExtensions' => [
'php', 'html', 'htm', 'env'
],
'options' => [
'enable_file_monitor' => !in_array('-d', $argv) && DIRECTORY_SEPARATOR === '/', // Dosya izlemeyi etkinleştir
'enable_memory_monitor' => DIRECTORY_SEPARATOR === '/', // Bellek izlemeyi etkinleştir
]
]
]
];
monitorDir
, hangi dizinlerdeki güncellemelerin izleneceğini yapılandırmak için kullanılır (izlenecek dizinlerdeki dosya sayısı fazla olmamalıdır).
monitorExtensions
, monitorDir
dizininde hangi dosya uzantılarının izlenmesi gerektiğini yapılandırmak için kullanılır.
options.enable_file_monitor
değeri true
olduğunda, dosya güncelleme izleme etkinleştirilir (Linux sisteminde debug modunda çalıştırıldığında dosya izleme varsayılan olarak açıktır).
options.enable_memory_monitor
değeri true
olduğunda, bellek kullanımını izleme etkinleştirilir (bellek izleme Windows sistemlerinde desteklenmez).
İpucu
Windows sistemindewindows.bat
veyaphp windows.php
çalıştırılması gerektiğinde dosya güncelleme izlemesi etkinleştirilir.