JL
ID
Beranda dokumentasi
Menu
Panduan

Kirim Log Melalui HTTP

Ingest log dengan POST /log dan verifikasi ketersediaan langsung di memori.

guide jsonlog

Kirim Log Melalui HTTP

Tujuan: ingest log melalui HTTP dan memverifikasi log langsung tersedia untuk baca/stream.

Prasyarat

  • Layanan JsonLog dapat diakses.
  • Untuk channel privat, siapkan token Bearer dengan acc yang cocok.
  • Selalu kirim body JSON untuk POST /log (minimal {}).

Alur API/Script

  1. Kirim event publik:
    • POST /log dengan payload JSON.
  2. Kirim event channel:
    • POST /log?cid=<channel_id> dengan payload JSON.
  3. Baca log buffer:
    • GET /log untuk log publik.
    • GET /log?cid=<channel_id> untuk log channel.

Alur HTTP/curl

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

# Event publik (tanpa auth)
curl -sS -X POST "${JSONLOG_BASE_URL}/log" \
  -H "content-type: application/json" \
  --data '{"message":"hello from public","service":"web"}'

# Event channel (auth opsional kecuali channel privat)
curl -sS -X POST "${JSONLOG_BASE_URL}/log?cid=svc-api" \
  -H "authorization: Bearer ${ACCESS_TOKEN}" \
  -H "content-type: application/json" \
  --data '{"message":"channel event","_jsonlog":{"lvl":"info"}}'

# Baca buffer publik
curl -sS "${JSONLOG_BASE_URL}/log"

# Baca buffer channel
curl -sS "${JSONLOG_BASE_URL}/log?cid=svc-api" \
  -H "authorization: Bearer ${ACCESS_TOKEN}"

Validasi

  • POST /log mengembalikan 200 untuk payload yang diterima.
  • GET /log mengembalikan array.
  • GET /log?cid=<id> mengembalikan array untuk channel yang terlihat, 404 untuk channel privat dengan akun salah.

Dokumen Terkait