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
accyang cocok. - Selalu kirim body JSON untuk
POST /log(minimal{}).
Alur API/Script
- Kirim event publik:
POST /logdengan payload JSON.
- Kirim event channel:
POST /log?cid=<channel_id>dengan payload JSON.
- Baca log buffer:
GET /loguntuk 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 /logmengembalikan200untuk payload yang diterima.GET /logmengembalikan array.GET /log?cid=<id>mengembalikan array untuk channel yang terlihat,404untuk channel privat dengan akun salah.