mongodb-bundle icon indicating copy to clipboard operation
mongodb-bundle copied to clipboard

Allow customizing URI options more

Open bruno-buiret opened this issue 2 years ago • 2 comments

Hello,

In order to better monitor ongoDB servers, I use the appName connection URI option but after going through the bundle's code, in particular ClientRegistry::buildClientConfiguration(), it seems like URI options can't be customized more than the four ones available here.

        return new ClientConfiguration(
            $conf['uri'],
            $conf['username'],
            $conf['password'],
            $conf['authSource'],
            // Beginning of URI options
            [
                'replicaSet' => $conf['replicaSet'],
                'ssl' => $conf['ssl'],
                'connectTimeoutMS' => $conf['connectTimeoutMS'],
                'readPreference' => $conf['readPreference'],
            ],
            // End of URI options
            $conf['driverOptions']
        );

Would it be possible to allow for more customization here? I'm not quite sure how to allow for more since these four ones are at the top level of the client's configuration and it would be quite a pain to add every possible URI option at top level.

Thanks!

bruno-buiret avatar Mar 08 '23 10:03 bruno-buiret

Hi @bruno-buiret thank you for opening this.

Not sure about implementation details, but yes I agree, it would be a pain keeping up with all possible uri options.

Maybe an approach similar to this #89 ?

ilario-pierbattista avatar Mar 09 '23 18:03 ilario-pierbattista

Hello,

You're welcome! It could be done with the same method I think, with an array_merge() of the four already existing ones if the UriOptionsInterface is defined?

bruno-buiret avatar Mar 13 '23 12:03 bruno-buiret