> For a complete index of all SignalWire documentation pages, fetch https://signalwire.com/docs/llms.txt

# setLogger

> Replace the built-in logger with a custom implementation.

```ts
setLogger(logger): void
```

Replace the built-in logger with a custom implementation. Pass `null` to restore defaults.

## **Parameters**

Custom logger implementation, or `null` to restore the default. See [`SDKLogger`](/docs/browser-sdk/v4/reference/interfaces/sdk-logger).

## **Returns**

`void`

## **Examples**

### Plug in a custom logger

```ts
import { setLogger } from '@signalwire/js';

setLogger({
  trace: (...args) => myTelemetry.send('trace', args),
  debug: (...args) => myTelemetry.send('debug', args),
  info:  (...args) => myTelemetry.send('info', args),
  warn:  (...args) => myTelemetry.send('warn', args),
  error: (...args) => myTelemetry.send('error', args),
});
```

### Restore the default logger

```ts
setLogger(null);
```