From 5e0ec9e6a1a7cbeb984710d96aab2a7592c3c1c7 Mon Sep 17 00:00:00 2001 From: Alex Renoki Date: Thu, 13 Aug 2020 10:15:52 +0300 Subject: [PATCH 1/3] Added defined http logger class in the config --- config/websockets.php | 6 ++++++ src/Console/StartWebSocketServer.php | 4 +++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/config/websockets.php b/config/websockets.php index 6a2e7f0379..a4517cfd70 100644 --- a/config/websockets.php +++ b/config/websockets.php @@ -81,6 +81,12 @@ */ 'model' => \BeyondCode\LaravelWebSockets\Statistics\Models\WebSocketsStatisticsEntry::class, + /** + * The Statistics Logger will, by default, handle the incoming statistics, store them + * and then release them into the database on each interval defined below. + */ + 'logger' => \BeyondCode\LaravelWebSockets\Statistics\Logger::class, + /* * Here you can specify the interval in seconds at which statistics should be logged. */ diff --git a/src/Console/StartWebSocketServer.php b/src/Console/StartWebSocketServer.php index e68767c986..1f636c7f1a 100644 --- a/src/Console/StartWebSocketServer.php +++ b/src/Console/StartWebSocketServer.php @@ -61,7 +61,9 @@ protected function configureStatisticsLogger() $browser = new Browser($this->loop, $connector); app()->singleton(StatisticsLoggerInterface::class, function () use ($browser) { - return new HttpStatisticsLogger(app(ChannelManager::class), $browser); + $class = config('websockets.statistics.logger') ?: \BeyondCode\LaravelWebSockets\Statistics\Logger::class; + + return new $class(app(ChannelManager::class), $browser); }); $this->loop->addPeriodicTimer(config('websockets.statistics.interval_in_seconds'), function () { From 73dfa02f3dbee00ce04eee6fbe816c7dc7842fcb Mon Sep 17 00:00:00 2001 From: rennokki Date: Thu, 13 Aug 2020 10:16:15 +0300 Subject: [PATCH 2/3] Apply fixes from StyleCI (#441) --- src/Console/StartWebSocketServer.php | 1 - 1 file changed, 1 deletion(-) diff --git a/src/Console/StartWebSocketServer.php b/src/Console/StartWebSocketServer.php index 1f636c7f1a..81c51a35f8 100644 --- a/src/Console/StartWebSocketServer.php +++ b/src/Console/StartWebSocketServer.php @@ -9,7 +9,6 @@ use BeyondCode\LaravelWebSockets\Server\Logger\WebsocketsLogger; use BeyondCode\LaravelWebSockets\Server\WebSocketServerFactory; use BeyondCode\LaravelWebSockets\Statistics\DnsResolver; -use BeyondCode\LaravelWebSockets\Statistics\Logger\HttpStatisticsLogger; use BeyondCode\LaravelWebSockets\Statistics\Logger\StatisticsLogger as StatisticsLoggerInterface; use BeyondCode\LaravelWebSockets\WebSockets\Channels\ChannelManager; use Clue\React\Buzz\Browser; From 10c2a060860df5488e57af0d4f623194d05691b5 Mon Sep 17 00:00:00 2001 From: Alex Renoki Date: Thu, 13 Aug 2020 10:17:34 +0300 Subject: [PATCH 3/3] wip --- src/Console/StartWebSocketServer.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Console/StartWebSocketServer.php b/src/Console/StartWebSocketServer.php index 1f636c7f1a..a078666d71 100644 --- a/src/Console/StartWebSocketServer.php +++ b/src/Console/StartWebSocketServer.php @@ -61,7 +61,7 @@ protected function configureStatisticsLogger() $browser = new Browser($this->loop, $connector); app()->singleton(StatisticsLoggerInterface::class, function () use ($browser) { - $class = config('websockets.statistics.logger') ?: \BeyondCode\LaravelWebSockets\Statistics\Logger::class; + $class = config('websockets.statistics.logger', \BeyondCode\LaravelWebSockets\Statistics\Logger::class); return new $class(app(ChannelManager::class), $browser); });