Gateway

Kontrole stanu

Krótki przewodnik do weryfikowania łączności kanałów bez zgadywania.

Szybkie kontrole

  • OmeniaClaw status — lokalne podsumowanie: osiągalność/tryb Gateway, wskazówka aktualizacji, wiek uwierzytelnienia połączonego kanału, sesje i ostatnia aktywność.
  • OmeniaClaw status --all — pełna lokalna diagnoza (tylko do odczytu, kolorowa, bezpieczna do wklejenia przy debugowaniu).
  • OmeniaClaw status --deep — pyta działający Gateway o aktywną sondę kondycji (health z probe:true), w tym sondy kanałów dla poszczególnych kont, gdy są obsługiwane.
  • OmeniaClaw health — pyta działający Gateway o jego migawkę kondycji (tylko WS; bez bezpośrednich gniazd kanałów z CLI).
  • OmeniaClaw health --verbose — wymusza aktywną sondę kondycji i wypisuje szczegóły połączenia z Gateway.
  • OmeniaClaw health --json — wynik migawki kondycji w formacie czytelnym maszynowo.
  • Wyślij /status jako samodzielną wiadomość w WhatsApp/WebChat, aby otrzymać odpowiedź ze statusem bez wywoływania agenta.
  • Logi: śledź /tmp/OmeniaClaw/OmeniaClaw-*.log i filtruj według web-heartbeat, web-reconnect, web-auto-reply, web-inbound.

W przypadku Discord i innych dostawców czatu wiersze sesji nie oznaczają żywotności gniazda. OmeniaClaw sessions, Gateway sessions.list oraz narzędzie agenta sessions_list odczytują zapisany stan konwersacji. Dostawca może połączyć się ponownie i pokazywać zdrowy status kanału, zanim zostanie utworzony jakikolwiek nowy wiersz sesji. Do kontroli aktywnej łączności używaj powyższych poleceń statusu kanału i kondycji.

Głęboka diagnostyka

  • Dane uwierzytelniające na dysku: ls -l ~/.OmeniaClaw/credentials/whatsapp/<accountId>/creds.json (czas modyfikacji powinien być świeży).
  • Magazyn sesji: ls -l ~/.OmeniaClaw/agents/<agentId>/sessions/sessions.json (ścieżkę można nadpisać w konfiguracji). Liczba i ostatni odbiorcy są pokazywani przez status.
  • Przepływ ponownego łączenia: OmeniaClaw channels logout && OmeniaClaw channels login --verbose, gdy w logach pojawiają się kody statusu 409–515 lub loggedOut. (Uwaga: przepływ logowania QR automatycznie restartuje się raz dla statusu 515 po sparowaniu).
  • Diagnostyka jest domyślnie włączona. Gateway zapisuje fakty operacyjne, chyba że ustawiono diagnostics.enabled: false. Zdarzenia pamięci zapisują liczby bajtów RSS/sterty, presję progów i presję wzrostu. Ostrzeżenia o żywotności zapisują opóźnienie pętli zdarzeń, wykorzystanie pętli zdarzeń, proporcję rdzeni CPU oraz liczby aktywnych/oczekujących/zakolejkowanych sesji, gdy proces działa, ale jest przeciążony. Zdarzenia zbyt dużych ładunków zapisują, co zostało odrzucone, skrócone lub podzielone na części, a także rozmiary i limity, gdy są dostępne. Nie zapisują tekstu wiadomości, zawartości załączników, treści webhooka, surowej treści żądania lub odpowiedzi, tokenów, cookies ani wartości sekretów. Ten sam Heartbeat uruchamia ograniczony rejestrator stabilności, który jest dostępny przez OmeniaClaw gateway stability lub RPC Gateway diagnostics.stability. Krytyczne wyjścia Gateway, przekroczenia czasu zamykania i niepowodzenia startu po restarcie utrwalają najnowszą migawkę rejestratora w ~/.OmeniaClaw/logs/stability/, gdy istnieją zdarzenia; sprawdź najnowszy zapisany pakiet poleceniem OmeniaClaw gateway stability --bundle latest.
  • W przypadku zgłoszeń błędów uruchom OmeniaClaw gateway diagnostics export i dołącz wygenerowany plik zip. Eksport łączy podsumowanie Markdown, najnowszy pakiet stabilności, oczyszczone metadane logów, oczyszczone migawki statusu/kondycji Gateway oraz kształt konfiguracji. Jest przeznaczony do udostępniania: tekst czatu, treści webhooków, wyniki narzędzi, dane uwierzytelniające, cookies, identyfikatory kont/wiadomości i wartości sekretów są pomijane lub redagowane. Zobacz Eksport diagnostyki.

Konfiguracja monitora kondycji

  • gateway.channelHealthCheckMinutes: jak często gateway sprawdza kondycję kanałów. Domyślnie: 5. Ustaw 0, aby globalnie wyłączyć restarty monitora kondycji.
  • gateway.channelStaleEventThresholdMinutes: jak długo połączony kanał może pozostawać bezczynny, zanim monitor kondycji uzna go za nieaktualny i zrestartuje. Domyślnie: 30. Utrzymuj tę wartość większą lub równą gateway.channelHealthCheckMinutes.
  • gateway.channelMaxRestartsPerHour: kroczący, jednogodzinny limit restartów monitora kondycji na kanał/konto. Domyślnie: 10.
  • channels.<provider>.healthMonitor.enabled: wyłącza restarty monitora kondycji dla konkretnego kanału, pozostawiając globalne monitorowanie włączone.
  • channels.<provider>.accounts.<accountId>.healthMonitor.enabled: nadpisanie dla wielu kont, które ma pierwszeństwo przed ustawieniem na poziomie kanału.
  • Te nadpisania dla poszczególnych kanałów dotyczą wbudowanych monitorów kanałów, które udostępniają je obecnie: Discord, Google Chat, iMessage, Microsoft Teams, Signal, Slack, Telegram i WhatsApp.

Gdy coś zawiedzie

  • logged out lub status 409–515 → połącz ponownie za pomocą OmeniaClaw channels logout, a następnie OmeniaClaw channels login.
  • Gateway nieosiągalny → uruchom go: OmeniaClaw gateway --port 18789 (użyj --force, jeśli port jest zajęty).
  • Brak wiadomości przychodzących → potwierdź, że połączony telefon jest online, a nadawca jest dozwolony (channels.whatsapp.allowFrom); w przypadku czatów grupowych upewnij się, że lista dozwolonych i reguły wzmianek pasują (channels.whatsapp.groups, agents.list[].groupChat.mentionPatterns).

Dedykowane polecenie „health”

OmeniaClaw health pyta działający Gateway o jego migawkę kondycji (bez bezpośrednich gniazd kanałów z CLI). Domyślnie może zwrócić świeżą zbuforowaną migawkę Gateway; następnie gateway odświeża tę pamięć podręczną w tle. OmeniaClaw health --verbose wymusza zamiast tego aktywną sondę. Polecenie raportuje połączone dane uwierzytelniające/wiek uwierzytelnienia, gdy są dostępne, podsumowania sond dla poszczególnych kanałów, podsumowanie magazynu sesji oraz czas trwania sondy. Kończy się kodem niezerowym, jeśli Gateway jest nieosiągalny albo sonda nie powiedzie się/przekroczy limit czasu.

Opcje:

  • --json: wynik JSON czytelny maszynowo
  • --timeout <ms>: nadpisuje domyślny 10-sekundowy limit czasu sondy
  • --verbose: wymusza aktywną sondę i wypisuje szczegóły połączenia z Gateway
  • --debug: alias dla --verbose

Migawka kondycji obejmuje: ok (wartość logiczna), ts (znacznik czasu), durationMs (czas sondy), status dla poszczególnych kanałów, dostępność agenta i podsumowanie magazynu sesji.

Powiązane

Was this useful?
On this page

On this page