Protokoll#

Protokollstufe#

Sie können die Protokollebene des Xinference-Clusters über die Option --log-level konfigurieren. Zum Beispiel, starten Sie den lokalen Xinference-Cluster mit der Protokollebene DEBUG:

xinference-local --log-level debug

Protokolldatei#

Xinference unterstützt rotierende Logdateien. Standardmäßig wird eine neue Logdatei erstellt, wenn eine einzelne Logdatei 100 MB erreicht. Das System behält die letzten 30 Backup-Logdateien. Die oben genannte Konfiguration der Logstufe beeinflusst sowohl die Befehlszeilen-Logs als auch die Logdateien.

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

Protokollverzeichnisstruktur#

Zunächst werden alle Logs im Verzeichnis <XINFERENCE_HOME>/logs gespeichert, wobei die Konfiguration von <XINFERENCE_HOME> unter verwenden beschrieben wird.

Zweitens erstellt Xinference ein Unterverzeichnis im Log-Verzeichnis <XINFERENCE_HOME>/logs. Der Name des Unterverzeichnisses entspricht dem Zeitpunkt (in Millisekunden), zu dem der Xinference-Cluster gestartet wurde.

Lokale Bereitstellung#

In einer lokalen Bereitstellung werden die Logs von Xinference Supervisor und Xinference Workers in einer einzigen Datei zusammengeführt. Die Verzeichnisstruktur der Logs ist wie folgt:

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

Dabei ist 1699503558105 der Zeitstempel, der bei der Erstellung des Xinference-Clusters vergeben wurde. Wenn Sie also lokal mehrfach Cluster erstellen, können Sie anhand dieses Zeitstempels die entsprechenden Protokolle finden.

Verteilte Bereitstellung#

Bei einer verteilten Bereitstellung erstellen der Xinference-Supervisor und die Xinference-Worker jeweils eigene Unterverzeichnisse im Protokollverzeichnis. Der Name des Unterverzeichnisses beginnt mit der Cluster-Rollenbezeichnung, gefolgt von der Startzeit (in Millisekunden). Wie unten dargestellt:

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