--TEST-- MongoDB\Driver\Monitoring\removeSubscriber(): Removing one of multiple loggers --FILE-- name = $name; } public function log(int $level, string $domain, string $message): void { printf("%s: %d: %s: %s\n", $this->name, $level, $domain, $message); } } $logger1 = new MyLogger('ONE'); $logger2 = new MyLogger('TWO'); addSubscriber($logger1); mongoc_log(LogSubscriber::LEVEL_ERROR, 'domain', 'error'); mongoc_log(LogSubscriber::LEVEL_CRITICAL, 'domain', 'critical'); addSubscriber($logger2); mongoc_log(LogSubscriber::LEVEL_WARNING, 'domain', 'warning'); mongoc_log(LogSubscriber::LEVEL_MESSAGE, 'domain', 'message'); removeSubscriber($logger1); mongoc_log(LogSubscriber::LEVEL_INFO, 'domain', 'info'); mongoc_log(LogSubscriber::LEVEL_DEBUG, 'domain', 'debug'); ?> ===DONE=== --EXPECT-- ONE: 0: domain: error ONE: 1: domain: critical ONE: 2: domain: warning TWO: 2: domain: warning ONE: 3: domain: message TWO: 3: domain: message TWO: 4: domain: info TWO: 5: domain: debug ===DONE===