JL
FR
Accueil documentation
Menu
Guides

Streamer Des Logs En WebSocket

Abonnez-vous à des flux temps réel publics ou par canal via /ws.

guide jsonlog

Streamer Des Logs En WebSocket

Objectif : consommer les logs en temps réel via des abonnements WebSocket.

Préconditions

  • Le service JsonLog est joignable.
  • Le client WebSocket prend en charge les paramètres de query et headers d’auth.
  • Pour les canaux privés, fournir un token Bearer valide du compte propriétaire.

Flux API/Script

  1. Ouvrir un flux public :
    • upgrade GET /ws.
  2. Ouvrir un flux de canal :
    • GET /ws?cid=<channel_id>.
  3. Appliquer un filtre de niveau :
    • GET /ws?level=error ou GET /ws?cid=<channel_id>&level=warn.
  4. Pour les canaux privés :
    • inclure Authorization: Bearer <token> dans la requête d’upgrade.

Flux HTTP/curl

curl ne peut pas terminer un flux WebSocket. Utilisez un client WebSocket comme wscat :

JSONLOG_BASE_URL="ws://localhost:3002"
ACCESS_TOKEN="<optional_account_token>"

# Flux public
wscat -c "${JSONLOG_BASE_URL}/ws"

# Flux public avec filtre de niveau
wscat -c "${JSONLOG_BASE_URL}/ws?level=error"

# Flux de canal
wscat -c "${JSONLOG_BASE_URL}/ws?cid=svc-api"

# Flux de canal privé (authentifié)
wscat -c "${JSONLOG_BASE_URL}/ws?cid=private-api" \
  -H "Authorization: Bearer ${ACCESS_TOKEN}"

Validation

  • Le message initial contient un tableau des logs en mémoire pour ce scope.
  • Upgrade privé sans token : 401.
  • Upgrade privé avec token d’un autre compte : 404.

Documentation Liée