# API日誌實驗：公開資料

2026年10月29日，以Python 3.11.2標準函式庫的專用API，在同一主機的迴路介面量測。7種日誌處理×2種讀取端×3次，每次每秒20個請求、持續8秒，共160筆。預備量測不計入。

- `summary.csv`：14種條件的合併結果。p50/p95/p99各取480筆排序後第`ceil(n*p)`筆。`run_p99_min_ms`／`max_ms`是各次p99的最小與最大值，並非信賴區間。
- `runs.csv`：42次量測結果，不包含巢狀的內部環境資訊。
- `requests.csv`：6,720個請求的相對時間、回應時間與API內部量測。不含絕對時間、連線資訊或日誌本文。
- `timeline.csv`：產生與讀取位元組的累積量及相對時間。產生時刻記在呼叫logger之前；讀取約每50ms取樣。取樣間的`unread_bytes`可能高估實際未讀量，也不等於佇列占用量。

`latency_ms`從預定發送到回應本文接收完成。`schedule_lag_ms`從預定發送到客戶端開始處理請求。回應時間包含建立連線與API等待。`generate_us`是JSON產生相當區間；`logging_us`包含logger呼叫、計數與編碼，並非每筆日誌的純成本。

`completed_rps`為完成請求數除以max（8秒，最後HTTP回應的相對時刻）。`completed_and_drained_rps`還包含全部日誌讀完的時間。兩者描述固定輸入負載如何結束，不是最大處理能力。

`api_cpu_cores`是API的CPU秒數除以回應觀測區間。`api_cpu_quota_percent`是相對0.25核心上限的比例，包含量測處理。`api_cpu_s_including_drain`還包含後續統計資料取得，僅作參考，不可視為日誌單獨的CPU成本。1核心代表主機1個邏輯CPU。

`drain_after_last_response_s`從最後HTTP回應到全部日誌讀完，不代表持久化儲存或外部服務確認。未測試無限期負載或達到256筆的佇列上限。

短文含換行128位元組。大型JSON含換行16,384位元組，是以長ASCII字串為主的固定合成資料。`json_only`產生相同JSON但輸出為零。全部輸出以位元組數、換行數與SHA-256核對，遺失、佇列丟棄、HTTP錯誤皆為零。

輸出端為專用FIFO。`fast`不刻意限制讀取；`slow`每讀取4,096位元組後等待，上限256KiB/秒。未測試實際磁碟持久化或網路傳輸效能。
