refactor(logging, queue): replace RedisQueue with FileQueue for async logging
- Update `LoggerInitializer` to use `FileQueue` instead of `RedisQueue` for async logging, improving local file-based queuing. - Remove unused `RedisQueue` and related Redis configurations. - Modify `createQueue` to accept `PathProvider` for file path resolution. - Revise `AGENTS.md` to add detailed AI agent usage and updated guidelines. - Refactor `ComponentRegistryInitializer` to use explicit dependency injection for `__invoke` method, ensuring cleaner and more maintainable initialization logic.
This commit is contained in:
@@ -18,10 +18,8 @@ use App\Framework\Logging\Handlers\DockerJsonHandler;
|
||||
use App\Framework\Logging\Handlers\FileHandler;
|
||||
use App\Framework\Logging\Handlers\MultiFileHandler;
|
||||
use App\Framework\Logging\Handlers\NullHandler;
|
||||
use App\Framework\Logging\Handlers\QueuedLogHandler;
|
||||
use App\Framework\Logging\LogHandler;
|
||||
use App\Framework\Queue\Queue;
|
||||
use App\Framework\Queue\RedisQueue;
|
||||
use App\Framework\Queue\FileQueue;
|
||||
use App\Framework\Redis\RedisConfig;
|
||||
use App\Framework\Redis\RedisConnection;
|
||||
|
||||
@@ -46,7 +44,7 @@ final readonly class LoggerInitializer
|
||||
$processorManager = new ProcessorManager();
|
||||
$minLevel = $this->determineMinLogLevel($config);
|
||||
$logConfig = $this->initializeLogConfig($pathProvider);
|
||||
$queue = $this->createQueue($env);
|
||||
$queue = $this->createQueue($pathProvider);
|
||||
$handlers = $this->createHandlers($config, $env, $logConfig, $pathProvider, $minLevel, $queue);
|
||||
$contextManager = $container->get(LogContextManager::class);
|
||||
$clock = $container->get(Clock::class);
|
||||
@@ -118,16 +116,15 @@ final readonly class LoggerInitializer
|
||||
/**
|
||||
* Erstellt die Queue für asynchrones Logging
|
||||
*/
|
||||
private function createQueue(Environment $env): Queue
|
||||
private function createQueue(PathProvider $pathProvider): Queue
|
||||
{
|
||||
$redisConfig = RedisConfig::fromEnvironment($env);
|
||||
$redisConnection = new RedisConnection($redisConfig, 'queue');
|
||||
#$redisConfig = RedisConfig::fromEnvironment($env);
|
||||
#$redisConnection = new RedisConnection($redisConfig, 'queue');
|
||||
|
||||
return new RedisQueue($redisConnection, 'commands');
|
||||
#return new RedisQueue($redisConnection, 'commands');
|
||||
|
||||
// Alternativ: FileQueue mit aufgelöstem Pfad
|
||||
// $queuePath = $pathProvider->resolvePath('storage/queue');
|
||||
// return new FileQueue($queuePath);
|
||||
$queuePath = $pathProvider->resolvePath('storage/queue');
|
||||
return new FileQueue($queuePath);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user