JL
ZH-TW
文件首頁
選單
指南

透過 HTTP 傳送日誌

以 POST /log 擷取日誌,並驗證其可立即在記憶體中使用。

guide jsonlog

透過 HTTP 傳送日誌

目的:透過 HTTP 擷取日誌,並驗證可立即供讀取/串流使用。

前置條件

  • JsonLog 服務可連線。
  • 私有頻道需具備 acc 相符的 Bearer 權杖。
  • POST /log 必須始終送出 JSON 請求本文(最少 {})。

API/Script 流程

  1. 傳送公開事件:
    • 以 JSON 載荷呼叫 POST /log
  2. 傳送頻道事件:
    • 以 JSON 載荷呼叫 POST /log?cid=<channel_id>
  3. 讀取緩衝日誌:
    • 公開日誌:GET /log
    • 頻道日誌:GET /log?cid=<channel_id>

HTTP/curl 流程

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

# 公開事件(不需驗證)
curl -sS -X POST "${JSONLOG_BASE_URL}/log" \
  -H "content-type: application/json" \
  --data '{"message":"hello from public","service":"web"}'

# 頻道事件(除私有頻道外驗證可選)
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"}}'

# 讀取公開緩衝
curl -sS "${JSONLOG_BASE_URL}/log"

# 讀取頻道緩衝
curl -sS "${JSONLOG_BASE_URL}/log?cid=svc-api" \
  -H "authorization: Bearer ${ACCESS_TOKEN}"

驗證

  • POST /log 在載荷被接受時回傳 200
  • GET /log 回傳陣列。
  • GET /log?cid=<id> 對可見頻道回傳陣列,帳戶不符的私有頻道回傳 404

相關文件