# Logger

`import { Logger } from "destack:telemetry";`

Structured logger.

```ds title="Logger"
export class Logger {
    name: string;
    constructor(name: string);
    log(level: Level, name: &'b readonly string, options?: LogOptions<'c> | undefined): void;
    trace(name: &'b readonly string, fields?: Fields | undefined): void;
    debug(name: &'b readonly string, fields?: Fields | undefined): void;
    info(name: &'b readonly string, fields?: Fields | undefined): void;
    warn(name: &'b readonly string, fields?: Fields | undefined): void;
    error(name: &'b readonly string, fields?: Fields | undefined, error?: unknown | undefined): void;
    fatal(name: &'b readonly string, fields?: Fields | undefined, error?: unknown | undefined): void;
}
```

[language/library/src/telemetry/log.ds:21:74](https://github.com/destack-sh/destack/blob/main/language/library/src/telemetry/log.ds#L21-L74)

## Members

### `name: string`

Logger name.

### `constructor(name: string)`

Create a logger.

### `log(level: Level, name: &'b readonly string, options?: LogOptions<'c> | undefined): void`

Write one log entry.

### `trace(name: &'b readonly string, fields?: Fields | undefined): void`

Write one trace event.

### `debug(name: &'b readonly string, fields?: Fields | undefined): void`

Write one debug event.

### `info(name: &'b readonly string, fields?: Fields | undefined): void`

Write one informational event.

### `warn(name: &'b readonly string, fields?: Fields | undefined): void`

Write one warning event.

### `error(name: &'b readonly string, fields?: Fields | undefined, error?: unknown | undefined): void`

Write one error event.

### `fatal(name: &'b readonly string, fields?: Fields | undefined, error?: unknown | undefined): void`

Write one fatal event.
