Temel Hata Ayıklama

Workerman'ın iki çalışma modu vardır: hata ayıklama modu ve daemon çalışma modu.

Çalıştırarak php start.php start hata ayıklama moduna geçilir; bu esnada kod içerisindeki echo, var_dump, var_export gibi fonksiyonların çıktıları terminalde görünecektir. Dikkat edilmesi gereken nokta, php start.php start ile çalışan Workerman terminal kapandığında tüm işlemlerin sona erecek olmasıdır.

Buna karşın, php start.php start -d komutu ile daemon moduna geçilmiş olur; yani, uygulama canlı ortamda çalışır ve terminal kapatıldığında etkilenmez.

Eğer daemon modunda çalışırken de echo, var_dump, var_export gibi fonksiyonların çıktısını görmek istiyorsanız, Worker::$stdoutFile özelliğini ayarlayabilirsiniz; örneğin:

use Workerman\Worker;
use Workerman\Connection\TcpConnection;
require_once __DIR__ . '/vendor/autoload.php';

// Ekran çıktısını Worker::$stdoutFile ile belirtilen dosyaya yönlendirin
Worker::$stdoutFile = '/tmp/stdout.log';

$http_worker = new Worker("http://0.0.0.0:2345");
$http_worker->onMessage = function(TcpConnection $connection, $data)
{
    $connection->send('hello world');
};

Worker::runAll();

Bu şekilde tüm echo, var_dump, var_export gibi fonksiyonların çıktıları Worker::$stdoutFile ile belirtilen dosyaya yazılacaktır. Dikkat edilmesi gereken bir diğer nokta ise, Worker::$stdoutFile için belirtilen yolun yazma izinlerinin bulunması gerektiğidir.