# mongoc_client_pool_set_apm_callbacks()

## Synopsis

    bool
    mongoc_client_pool_set_apm_callbacks (mongoc_client_pool_t *pool,
                                          mongoc_apm_callbacks_t *callbacks,
                                          void *context);

Register a set of callbacks to receive Application Performance Monitoring events.

The callbacks are copied by the pool and may be destroyed at any time after.

## Parameters

- `pool`: A mongoc_client_pool_t.
- `callbacks`: A mongoc_apm_callbacks_t.
- `context`: Optional pointer to include with each event notification.

## Returns

Returns true on success. If any arguments are invalid, returns false and logs an error.

## 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().

## See Also

Introduction to Application Performance Monitoring