Sentry 開發者貢獻指南 - SDK 開發(數據處理)
作者:為少
在較舊的 SDK 中,您有時可能會看到復雜的構造以允許用戶剝離敏感數據。較新的 SDK 不再具有此功能,因為維護每個 SDK 太難了。
敏感數據
在較舊的 SDK 中,您有時可能會看到復雜的構造以允許用戶剝離敏感數據。較新的 SDK 不再具有此功能,因為維護每個 SDK 太難了。相反,只剩下兩個簡單的配置選項:
- send-default-pii 默認是禁用的,這意味著默認情況下不發送自然敏感的數據。這意味著,例如:
- https://docs.sentry.io/error-reporting/configuration/#send-default-pii
- 將 HTTP 請求附加到事件時,"raw(原始)" 主體(無法解析為 JSON 或 formdata 的主體)將被刪除,并且已知的敏感 header(例如 Authorization 或 Cookies)也將被刪除。
- 用戶特定信息(例如,根據所使用的 Web 框架的當前用戶 ID)根本不會發送。
- 請注意,如果用戶在 scope 內明確設置請求,則不會從該請求中刪除任何內容。上述規則僅適用于 SDK 附帶的集成。
- before-send 可用于注冊具有自定義邏輯的回調以刪除敏感數據。
- https://docs.sentry.io/error-reporting/configuration/#before-send
可變大小
事件負載中允許用戶指定值或動態值的字段大小受到限制。這適用于大多數元數據字段,例如堆棧跟蹤中的變量,以及上下文(context)、標簽(tag)和額外數據(extra):
- 值的映射(例如 HTTP data、extra data 等)限制為 50 個 item 對。
- Event ID 限制為 36 個字符,并且必須是有效的 UUID。
- Tag key 限制為 32 個字符。
- Tag 值限制為 200 個字符。
- Culprits 限制為 200 個字符。
- Context 對象限制為 8kB。
- 單個 extra data 項限制為 16kB。總 extra data 限制為 256kb。
- Message 限制為 8192 個字符。
- HTTP data(body)限制為 8kB。在將 HTTP data 附加到事件之前,始終對其進行修剪。
- 堆棧跟蹤限制為 50 幀。如果發送更多,數據將從堆棧的中間刪除。
此外,大小限制適用于所有存儲請求,包括請求(request)、事件負載(event payload)和附件(attachment)的總大小。Sentry 拒絕所有超過這些限制的請求。請參閱以下資源以了解確切的大小限制:
- 信封(Envelope)端點大小限制
- https://develop.sentry.dev/sdk/envelopes/#size-limits
- 存儲(Store)端點大小限制
- https://develop.sentry.dev/sdk/store/#size-limits
更多
Sentry 開發者貢獻指南 - SDK 開發(性能監控:Sentry SDK API 演進)
責任編輯:武曉燕
來源:
黑客下午茶