JL
JA
ドキュメントホーム
メニュー
ガイド

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 を返します。

関連ドキュメント