Przejdź do głównej zawartości

Diagnostyka systemu i analiza użycia

Libre WebUI udostępnia administratorom dwa bieżące widoki instancji: stronę System z diagnostyką hosta i środowiska uruchomieniowego oraz Użycie z analizą modeli i dostawców. Obie są ograniczone do administratorów w zapleczu i interfejsie. Odczyt pozostaje we wdrożeniu; opcjonalna zewnętrzna telemetria to osobna, konfigurowana przez operatora Obserwowalność.

Otwórz je z pozycji administratora na pasku bocznym, skrótów menu kart lub bezpośrednio przez /system i /usage. Inni użytkownicy nie mogą ich otworzyć, a karty zamykają się po utracie roli admin.

Diagnostyka systemu

Strona System (/system) pokazuje:

  • Host: nazwę, platformę, wydanie jądra, architekturę, czas pracy, liczbę logicznych CPU, model CPU, średnie obciążenie i prawdopodobne działanie w kontenerze. Nie ma procentu użycia CPU — tylko średnie obciążenie.
  • Środowisko uruchomieniowe: wersję aplikacji i Node.js, ID procesu, czas pracy i katalog roboczy.
  • Pamięć: całkowitą, wolną i używaną pamięć hosta oraz RSS i stertę procesu.
  • Systemy plików: pojemność i użycie systemu (/) i katalogu danych (DATA_DIR).
  • Sieć: nazwy i adresy interfejsów, na Linuxie liczniki bajtów odebranych/wysłanych.
  • Docker: wersję silnika, system hosta, jądro, CPU i pamięć zgłaszane przez silnik oraz liczbę i ograniczoną listę kontenerów, gdy socket jest dostępny.

Strona odświeża się co 30 sekund przy aktywnej karcie i ma przycisk ręczny. Punkt GET /api/system wymaga uwierzytelnienia, aktywnej roli administratora i ma limit 120 żądań na użytkownika na 15 minut. Odpowiedzi nigdy nie są buforowane (Cache-Control: no-store), a każde żądanie zbiera świeże wartości.

Zależność od socketu Docker

Sekcja Docker wybiera punkt tak samo jak Work i terminal: WORK_DOCKER_SOCKET, jeśli ustawiono (lokalna ścieżka Unix), inaczej DOCKER_HOSTunix:// albo zwykły HTTP tcp://, np. filtrowane proxy API — a następnie /var/run/docker.sock. Punkty ssh://, npipe:// i tcp:// z weryfikacją TLS są celowo pomijane. Żądania to tylko odczyty GET (wersja, informacje, lista), z limitem 4 sekund i rozmiaru; lista ma maksymalnie 100 pozycji.

Bez działającego socketu reszta strony funkcjonuje: panel wyjaśnia brak montowania, brak odczytu, nieosiągalny daemon lub zdalny punkt zamiast zgłaszać błąd całości.

Ujawniane dane i odbiorcy

Lista jest celowo zredukowana do krótkiego ID, nazwy, obrazu, stanu i czasu utworzenia. Zmienne środowiskowe, etykiety, montowania, polecenia i ładunki inspekcji nigdy nie są dołączane; odpowiedź nie zawiera poświadczeń.

Strona pokazuje rzeczywiste szczegóły: nazwę hosta, katalog, wewnętrzne IP oraz nazwy i obrazy wszystkich kontenerów, nie tylko Libre WebUI. To zgodne z modelem zaufania: administrator Libre WebUI w Dockerze jest faktycznie administratorem hosta (zobacz Docker). Przydzielaj admin odpowiednio.

Analiza użycia

Strona Użycie przedstawia pracę modeli i dostawców przypisaną użytkownikom. Pomiar odbywa się na obsługiwanych granicach i obejmuje:

  • lokalne wywołania czatu Ollama, w tym natywny Chat i Work przez Ollama;
  • wywołania zainstalowanych agentów CLI;
  • czat przez wtyczki ze strumieniowaniem i bez;
  • osadzanie, obrazy, mowę-na-tekst, tekst-na-mowę, dźwięk i filmy przez wtyczki; oraz
  • Work przez wtyczki.

Operacje tła bez właściciela nie są przypisywane sztucznemu kontu i nie są mierzone. Nieudane lub anulowane wywołanie nadal jest zapisywane.

Zdarzenie zapisuje:

  • ID dostawcy/wtyczki i kopię nazwy (ollama i agent-cli:* używają tego samego rejestru)
  • możliwość (chat, embedding, image, stt, tts, audio, video)
  • model
  • stan success, error lub cancelled (przerwany strumień jest anulowany)
  • tokeny tylko, gdy dostawca zwrócił metadane
  • liczniki jednostek (znaki TTS, obrazy, wejścia osadzania, zadania filmowe, bajty audio)
  • całkowity czas i znacznik czasu
  • ID użytkownika

Nic więcej nie jest przechowywane. Prompty, odpowiedzi, punkty dostawców, poświadczenia i treści błędów nigdy nie trafiają do tabeli użycia — błąd zapisuje tylko status = 'error'. Zdarzenia są w wybranej bazie (SQLite solo, PostgreSQL team) i przechowywane 400 dni; starsze są oportunistycznie usuwane przy zapisie, najwyżej raz dziennie. Pomiar działa best-effort i nigdy nie może zepsuć żądania modelu.

Strona oferuje zakres 7, 30 i 90 dni przez GET /api/plugins/usage?days=<1..365> tylko dla administratora (domyślnie 30). Pokazuje liczbę wywołań, zgłoszone tokeny, skuteczność, średnie opóźnienie, wykres dzienny wywołań/tokenów, tabelę modeli, udziały wtyczek i miks możliwości. Sumy obejmują tylko zgłoszone użycie.

Pomiaru nie można wyłączyć. Zagregowane dane mogą oglądać tylko administratorzy.

Użycie pokazuje wywołania, jednostki, tokeny, opóźnienie i wyniki. Dodaj Zarządzanie kosztami, gdy potrzebujesz taryf obowiązujących w czasie, rozbicia wydatków, budżetów, alertów lub eksportu księgowego. Zdarzenia bez taryfy lub metadanych pozostają widocznie niewycenione, nie bezpłatne.

Atrybucja OpenRouter

Od 0.18.0 żądania do OpenRouter identyfikują aplikację nagłówkami atrybucji (HTTP-Referer: https://librewebui.org, tytuł i kategorie). Są wysyłane tylko do https://openrouter.ai, nigdy niestandardowej lub samodzielnej trasy, i niczego nie dodają do lokalnej pamięci.

Powiązana dokumentacja