Log#

Nível de log#

Você pode configurar o nível de log do cluster Xinference através da opção --log-level. Por exemplo, inicie o cluster local do Xinference com o nível de log DEBUG:

xinference-local --log-level debug

Arquivo de log#

Xinference suporta arquivos de log rotativos. Por padrão, quando um único arquivo de log atinge 100MB, um novo arquivo de backup de log é gerado, e o sistema mantém os 30 backups de log mais recentes. O método de configuração do nível de log descrito acima afeta tanto os logs do terminal de comando quanto os arquivos de log.

Environment Variables#

Xinference provides several environment variables to control logging behavior:

  • XINFERENCE_LOG_CONSOLE: Enable or disable console output (default: true). When set to false, logs are written only to files, and tqdm progress bars are captured and sampled.

  • XINFERENCE_LOG_FORMAT: Log format, either text (default) or json.

  • XINFERENCE_LOG_DOWNLOAD_PROGRESS: Control how download progress bars are logged when XINFERENCE_LOG_CONSOLE=false. Valid values are sampled (default, logs at 25/50/75/100% per file), full (logs every frame), or off (no progress logs).

Example usage:

# Disable console output, log download progress at sampling points
XINFERENCE_LOG_CONSOLE=false XINFERENCE_LOG_DOWNLOAD_PROGRESS=sampled xinference-local

# Disable console output, log every download progress frame
XINFERENCE_LOG_CONSOLE=false XINFERENCE_LOG_DOWNLOAD_PROGRESS=full xinference-local

# Disable console output, no download progress logs
XINFERENCE_LOG_CONSOLE=false XINFERENCE_LOG_DOWNLOAD_PROGRESS=off xinference-local

Estrutura do diretório de logs#

Primeiramente, todos os logs são armazenados no diretório <XINFERENCE_HOME>/logs, e a forma de configurar <XINFERENCE_HOME> pode ser consultada em usar.

Em segundo lugar, o Xinference cria um subdiretório no diretório de logs <XINFERENCE_HOME>/logs. O nome do subdiretório corresponde ao horário de inicialização do cluster Xinference (em milissegundos).

Implantação local#

Na implantação local, os logs do supervisor do Xinference e dos workers do Xinference são mesclados em um único arquivo. A estrutura do diretório de logs é a seguinte:

<XINFERENCE_HOME>/logs
    └── local_1699503558105
        └── xinference.log

Onde 1699503558105 é o timestamp da criação do cluster Xinference. Portanto, ao criar clusters várias vezes localmente, você pode localizar os logs correspondentes com base neste timestamp.

Implantação Distribuída#

Na implantação distribuída, o supervisor do Xinference e os workers do Xinference criam seus próprios subdiretórios no diretório de logs. O nome do subdiretório começa com o nome da função do cluster, seguido pelo horário de inicialização (em milissegundos). Conforme mostrado abaixo:

<XINFERENCE_HOME>/logs
    └── supervisor_1699503558908
        └── xinference.log
        worker_1699503559105
        └── xinference.log