---
name: "mongoc_client_pool_set_structured_log_opts"
section: "3"
platform: "linux"
package: "libmongoc-doc"
version: "1.30.4-1+deb13u3"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/mongoc_client_pool_set_structured_log_opts"
---

# mongoc\_client\_pool\_set\_structured\_log\_opts(3)

## SYNOPSIS

```
bool
mongoc_client_pool_set_structured_log_opts (mongoc_client_pool_t *pool,
                                            const mongoc_structured_log_opts_t *opts);
```

Reconfigures this client pool's structured logging subsystem. See *Structured Logging*.

The *mongoc\_structured\_log\_opts\_t* is copied by the pool and may be safely destroyed by the caller after this API call completes. The application is responsible for ensuring any **user\_data** referenced by **opts** remains valid for the lifetime of the pool.

By default, the *mongoc\_client\_pool\_t* will have log options captured from the environment during *mongoc\_client\_pool\_new()*. See *mongoc\_structured\_log\_opts\_new()* for a list of the supported options.

The structured logging subsystem may be disabled by passing NULL as **opts** or equivalently by passing NULL as the *mongoc\_structured\_log\_func\_t* in *mongoc\_structured\_log\_opts\_set\_handler()*.

## PARAMETERS

- •

  **pool**: A *mongoc\_client\_pool\_t*.

- •

  **opts**: A *mongoc\_structured\_log\_opts\_t* allocated with *mongoc\_structured\_log\_opts\_new()*, or NULL to disable structured logging.

## RETURNS

Returns true when used correctly. If called multiple times per pool or after the first client is initialized, returns false and logs a warning.

## THREAD SAFETY

This function can only be called once on a pool, and must be called before the first call to *mongoc\_client\_pool\_pop()*.

Thread safety within the handler is the application's responsibility. Handlers may be invoked concurrently by multiple pool users.

**SEE ALSO:**

```
Structured Logging
```

## AUTHOR

MongoDB, Inc

## COPYRIGHT

2009-present, MongoDB, Inc.
