# Логирование

🤗 Diffusers имеет централизованную систему журналирования для удобного управления уровнем детализации библиотеки. Уровень детализации по умолчанию установлен на `WARNING`.

Чтобы изменить уровень детализации, используйте один из прямых сеттеров. Например, чтобы установить уровень детализации `INFO`.

```python
import diffusers

diffusers.logging.set_verbosity_info()
```

Вы также можете использовать переменную окружения `DIFFUSERS_VERBOSITY`, чтобы переопределить уровень детализации по умолчанию. Можно установить одно из следующих значений: `debug`, `info`, `warning`, `error`, `critical`. Например:

```bash
DIFFUSERS_VERBOSITY=error ./myprogram.py
```

Кроме того, некоторые `warnings` можно отключить, установив переменную окружения `DIFFUSERS_NO_ADVISORY_WARNINGS` в истинное значение, например `1`. Это отключает любые предупреждения, записываемые через `logger.warning_advice`. Например:

```bash
DIFFUSERS_NO_ADVISORY_WARNINGS=1 ./myprogram.py
```

Вот пример того, как использовать тот же логгер, что и библиотека, в собственном модуле или скрипте:

```python
from diffusers.utils import logging

logging.set_verbosity_info()
logger = logging.get_logger("diffusers")
logger.info("INFO")
logger.warning("WARN")
```

Все методы модуля логирования описаны ниже. Основные методы — `logging.get_verbosity` для получения текущего уровня детализации в логгере и `logging.set_verbosity` для установки уровня детализации по вашему выбору.

В порядке от наименее многословного к наиболее многословному:

|                                                    Метод | Целочисленное значение |                                         Описание |
|----------------------------------------------------------:|--------------:|----------------------------------------------------:|
| `diffusers.logging.CRITICAL` или `diffusers.logging.FATAL` |            50 |                отображать только наиболее критические ошибки |
|                                 `diffusers.logging.ERROR` |            40 |                                  отчитываться только об ошибках |
|   `diffusers.logging.WARNING` или `diffusers.logging.WARN` |            30 |           отображать только ошибки и предупреждения (по умолчанию) |
|                                  `diffusers.logging.INFO` |            20 | отображать только ошибки, предупреждения и базовую информацию |
|                                 `diffusers.logging.DEBUG` |            10 |                              отправлять всю информацию |

По умолчанию при загрузке модели отображаются индикаторы прогресса `tqdm`. Функции `logging.disable_progress_bar` и `logging.enable_progress_bar` используются для отключения или включения этого поведения.

## Базовые сеттеры[[diffusers.utils.logging.set_verbosity_error]]

#### diffusers.utils.logging.set_verbosity_error[[diffusers.utils.logging.set_verbosity_error]]

```python
diffusers.utils.logging.set_verbosity_error()
```

[Источник](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/utils/logging.py#L201)

Установите уровень детализации на `ERROR`.

#### diffusers.utils.logging.set_verbosity_warning[[diffusers.utils.logging.set_verbosity_warning]]

```python
diffusers.utils.logging.set_verbosity_warning()
```

[Источник](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/utils/logging.py#L191)

Установите уровень детализации на `WARNING`.

#### diffusers.utils.logging.set_verbosity_info[[diffusers.utils.logging.set_verbosity_info]]

```python
diffusers.utils.logging.set_verbosity_info()
```

[Источник](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/utils/logging.py#L186)

Установите уровень детализации на `INFO`.

#### diffusers.utils.logging.set_verbosity_debug[[diffusers.utils.logging.set_verbosity_debug]]

```python
diffusers.utils.logging.set_verbosity_debug()
```

[Источник](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/utils/logging.py#L196)

Установите уровень детализации на `DEBUG`.

## Другие функции[[diffusers.utils.logging.get_verbosity]]

#### diffusers.utils.logging.get_verbosity[[diffusers.utils.logging.get_verbosity]]

```python
diffusers.utils.logging.get_verbosity()
```

[Источник](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/utils/logging.py#L147)

**Возвращает:** `int`

Целочисленные значения уровня журналирования, которые могут быть одним из:

- `50`: `diffusers.logging.CRITICAL` или `diffusers.logging.FATAL`
- `40`: `diffusers.logging.ERROR`
- `30`: `diffusers.logging.WARNING` или `diffusers.logging.WARN`
- `20`: `diffusers.logging.INFO`
- `10`: `diffusers.logging.DEBUG`

Возвращает текущий уровень корневого логгера 🤗 Diffusers в виде `int`.

#### diffusers.utils.logging.set_verbosity[[diffusers.utils.logging.set_verbosity]]

```python
diffusers.utils.logging.set_verbosity(verbosity: int)
```

[Источник](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/utils/logging.py#L167)

**Параметры:**

verbosity (`int`) : Уровень ведения журнала, который может быть одним из:  - `diffusers.logging.CRITICAL` или `diffusers.logging.FATAL` - `diffusers.logging.ERROR` - `diffusers.logging.WARNING` или `diffusers.logging.WARN` - `diffusers.logging.INFO` - `diffusers.logging.DEBUG`

Установите уровень детализации для корневого логгера 🤗 Diffusers.

#### diffusers.utils.get_logger[[diffusers.utils.get_logger]]

```python
diffusers.utils.get_logger(name: str | None = None)
```

[Источник](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/utils/logging.py#L131)

Возвращает логгер с указанным именем.

Эта функция не предназначена для прямого обращения, если вы не пишете собственный модуль diffusers.

#### diffusers.utils.logging.enable_default_handler[[diffusers.utils.logging.enable_default_handler]]

```python
diffusers.utils.logging.enable_default_handler()
```

[Источник](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/utils/logging.py#L215)

Включите обработчик по умолчанию корневого логгера 🤗 Diffusers.

#### diffusers.utils.logging.disable_default_handler[[diffusers.utils.logging.disable_default_handler]]

```python
diffusers.utils.logging.disable_default_handler()
```

[Источник](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/utils/logging.py#L206)

Отключите обработчик по умолчанию корневого логгера 🤗 Diffusers.

#### diffusers.utils.logging.enable_explicit_format[[diffusers.utils.logging.enable_explicit_format]]

```python
diffusers.utils.logging.enable_explicit_format()
```

[Источник](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/utils/logging.py#L261)

Включите явное форматирование для каждого логгера 🤗 Diffusers. Явный форматтер выглядит следующим образом:
```
[LEVELNAME|FILENAME|LINE NUMBER] TIME >> MESSAGE
```

Все обработчики, в настоящее время привязанные к корневому логгеру, затрагиваются этим методом.

#### diffusers.utils.logging.reset_format[[diffusers.utils.logging.reset_format]]

```python
diffusers.utils.logging.reset_format()
```

[Источник](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/utils/logging.py#L276)

Сбрасывает форматирование для логгеров 🤗 Diffusers.

Все обработчики, в настоящее время привязанные к корневому логгеру, затрагиваются этим методом.

#### diffusers.utils.logging.enable_progress_bar[[diffusers.utils.logging.enable_progress_bar]]

```python
diffusers.utils.logging.enable_progress_bar()
```

[Источник](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/utils/logging.py#L352)

Включить индикатор прогресса tqdm.

#### diffusers.utils.logging.disable_progress_bar[[diffusers.utils.logging.disable_progress_bar]]

```python
diffusers.utils.logging.disable_progress_bar()
```

[Источник](https://github.com/huggingface/diffusers/blob/v0.43.0/src/diffusers/utils/logging.py#L358)

Отключить индикатор прогресса tqdm.

