Sentry 監控之 Alerts 告警
本文轉載自微信公眾號「黑客下午茶」,作者為少 。轉載本文請聯系黑客下午茶公眾號。
警報簡介
警報提供對代碼問題和對用戶的影響的實時可見性。有多種類型的警報可用于自定義閾值和集成。
從 sentry.io 的 Alerts 頁面,您可以創建新的警報規則并管理現有規則。“警報規則(Alert Rules)”選項卡顯示您現有的警報規則,以及它們的當前狀態、項目、團隊和創建日期。默認情況下,該列表經過篩選,以便僅顯示與您所屬的團隊以及與任何團隊無關的警報。您可以使用過濾器按鈕更改此設置。
警報(Alerts) 頁面還顯示一個 “歷史(History)” 選項卡,您可以在其中找到指標警報列表,其中包含觸發時間和活動時間等信息。
錯誤 Issue 警報
只要項目中的任何問題符合指定標準,就會觸發 Issue 警報。您可以為 Issue 級別的更改創建警報,例如:
- 新 Issue
- Issue 頻率增加
- 已解決和忽略的 Issue 變成未解決(unresolved)
您可以在 issue 警報配置中找到 Issue 警報觸發器的完整列表。
- https://docs.sentry.io/product/alerts/create-alerts/issue-alert-config/#when-conditions-triggers
錯誤和性能指標警報
當 error 或 transaction 事件違反了指標時,指標警報就會觸發。使用指標警報來監控您關心的一組有限且已知的指標和組件,例如整個項目中、重要頁面上或具有特定標簽的錯誤頻率或性能指標。
創建警報以監控指標,例如:
- 項目中的總錯誤(Total errors)
- 延遲(Latency):最小值(min)、最大值(max)、平均值(average)、百分位數(percentile)
- 失敗率(Failure rate)
- 自定義指標
您可以在指標警報中找到可用指標警報的完整列表。
- https://docs.sentry.io/product/alerts/alert-types/#metric-alerts
創建警報
在 sentry.io 中創建新項目時,您可以選擇默認的 issue 警報。但是,您也可以使用這些最佳實踐作為指南,創建自己的警報以滿足團隊的需求。
- https://docs.sentry.io/product/alerts/create-alerts/
- https://docs.sentry.io/product/alerts/create-alerts/best-practices/
通知
除了警報之外,Sentry 還會向您發送有關各種事項的通知,例如 issue 狀態更改、發布部署和配額使用情況。您可以在用戶設置 > 通知(User Settings > Notifications)中微調這些通知以及您的個人警報設置。在完整文檔中了解有關通知和調整其關聯設置的更多信息。
- issue state changes: https://docs.sentry.io/product/issues/states-triage/
- release deploys:https://docs.sentry.io/product/releases/
- quota usage:https://docs.sentry.io/product/accounts/quotas/
- https://docs.sentry.io/product/alerts/notifications/
警報類型
您可以創建兩種類型的警報:
- Issue alerts:當 issue(一組錯誤事件)符合特定條件時觸發。
- Metric alerts:當 error 或 transaction 事件的宏觀指標超過特定閾值時觸發。
Issue 警報
只要項目中的任何 issue 符合指定標準,就會觸發 Issue 警報。例如,這些標準可能是重新出現的已解決 issue 或影響許多用戶的 issue。
在“警報規則(Alert Rules)”選項卡中,這些警報由 issues 圖標標識,默認情況下,它們顯示在警報列表的底部。(如果您有多個指標警報,這可能會將您的 issue 警報從列表的第一頁推出。)
在問題警報中,Sentry 每次收到新事件時都會評估配置的警報條件。警報條件包括三個部分:
- 觸發器(Triggers)指定您想要監控的活動類型,或何時(When)應觸發警報。
- 過濾器(Filters)通過僅在 issue 符合指定標準時觸發警報來幫助控制 issue 噪音。
- 然后,Actions 指定當滿足觸發條件并且過濾器匹配時應該發生什么。
指標警報
指標警報會告訴您指標何時超過閾值,例如項目中錯誤數量的激增,或性能指標的變化,例如延遲(latency)、Apdex、故障率(failure rate)或吞吐量(throughput)。
指標警報監控 error 和 transaction 事件的宏觀指標。指標獲取一組事件并使用函數(例如 count() 或 avg())計算一段時間內應用于事件屬性的聚合值。創建指標警報時,您可以按屬性(attributes)和標簽(tags)過濾事件,這對于聚合未分組為單個 issue 的事件特別有用。
這些警報使用 Critical 和 Warning 觸發器來衡量嚴重性。警報的當前狀態是處于活動狀態的最高嚴重性觸發器(highest severity trigger),可以是以下三個值之一:警告(Warning)、嚴重(Critical)或已解決(Resolved)。每當警報的狀態發生變化時,Sentry 都會通知您。
創建警報時,所有顯示的警報類型(“Issues”除外)均可用于創建指標警報:
- Number of Errors(錯誤數)
- Users Experiencing Errors(出現錯誤的用戶)
- Throughput(吞吐量)
- Transaction Duration(transaction 時長)
- Apdex
- Failure Rate(失敗率)
- Largest Contentful Paint(最大內容繪制)
- First Input Delay(首次輸入延遲)
- Cumulative Layout Shift(累積布局偏移)
- Custom Metric(自定義指標)
警報詳情
警報詳細信息(Alert Details)頁面默認顯示過去 24 小時的指標警報規則的歷史記錄,但可以使用“顯示(Display)”下拉菜單修改時間段。觸發警報時,單擊您收到的通知會將您帶到此頁面,該頁面顯示警報處于活動狀態的時間段。該頁面還包括詳細信息,例如警報規則條件、警報的當前狀態以及警報在每種狀態(Critical、``Warning或Resolved`)中花費的時間摘要。
警報詳細信息(Alert Details)頁面還包括與指標相關的可疑 issue 或 transaction 的列表,以幫助更快地查明根本問題。您可以查看可能導致觸發警報的原因,然后在 Discover 中打開該指標以查找更多信息。
- https://docs.sentry.io/product/discover-queries
創建警報
創建警報所需的最低角色是 member。具有 manager 或 owner 權限的 Sentry 用戶可以在設置 > 常規設置 > 讓成員創建和編輯警報(Settings > General Settings > Let Members Create and Edit Alerts)中更改最低角色要求。
要創建警報:
- 導航到警報(Alerts)并單擊 “Create Alert Rule”。
- 選擇您的項目。
- 選擇您希望收到警報的內容。選擇 “Issues” 會創建 issue 警報,而選擇任何其他選項會創建 metric 警報。
- 單擊“設置條件(Set Conditions)”。
- 在警報配置頁面,設置告警條件:
- https://docs.sentry.io/product/alerts/create-alerts/metric-alert-config/
- https://docs.sentry.io/product/alerts/create-alerts/issue-alert-config/
- Issue 警報配置
- Metric 警報配置
Issue 警報配置
Sentry 提供了多個配置選項來根據您組織的需要創建 issue 警報。
環境
指定哪些環境(environment)將使用此特定警報規則。此控件過濾事件中的環境標簽。例如,此過濾器很有用,因為您應用于生產警報的緊迫性和工作流程可能不同于您應用于源自 QA 環境的警報的緊急程度和工作流程。
此處的 “Environment” 下拉列表具有與全局 “Environment” 下拉列表中所選項目可用的相同環境(不包括隱藏環境)。選擇 “All Environments” 相當于沒有環境過濾器。
團隊
您可以選擇要與警報關聯的團隊,以便該團隊的成員可以編輯警報。請注意,只有當您是團隊成員時才能進行此關聯。如果未選擇任何團隊,則任何人都可以編輯警報。
警報名稱
為您的警報指定一個描述性名稱,例如受影響的團隊和警報的主題。例如,“前端延遲(Frontend Latency)”、“后端故障率(Backend Failure Rate)”或“計費 Apdex(Billing Apdex)”。
“何時(When)”條件:觸發器
“When” 條件或觸發器指定您希望針對該 issue 監控哪種類型的活動:
- 首次出現
- 將狀態從已解決(resolved)更改為未解決(unresolved)
- 將狀態從忽略(ignored)更改為未解決(unresolved)
- 在一個時間間隔內看到超過一定次數
- 在一個時間間隔內被超過一定數量的唯一用戶看到
- 某個 issue 在 {time} 內影響了超過 {X}% 的會話
- 受影響的會話百分比是一個近似值,計算為 issue 頻率與項目中會話數的比率
- 僅當過去一小時的會話數超過 50 時才會觸發基于百分比的警報
觸發器(Triggers)是可選的。如果不選擇觸發器,則默認認為滿足 “When” 條件。也就是說,所有的事件都滿足這個條件。
在 Issue States & Triage 中了解有關 issue 狀態的更多信息。
- Issue States & Triage: https://docs.sentry.io/product/issues/states-triage/
“如果(If)”條件:過濾器
Sentry 在滿足 “When” 條件后檢查 “if conditions” 或過濾器,這些通過過濾掉不符合您指定標準的問題來幫助控制 noise。您可以過濾issue 或事件屬性。如果指定了事件過濾器,它只會檢查觸發警報的事件,例如:
issue 比特定持續時間更舊或新。
該 issue 至少發生了 {X} 次。
- issue 已分配給{no one/a team/a member}。
- 該事件來自最新 release。
- 事件的 {attribute} {matches} {value}。匹配類型:等于(equals)、不等于(does not equal)、開始于(starts with)、結束于(ends with)、包含(contains)、不包含(does not contain)、已設置(is set)或未設置(is not set)。
- 事件的 {tag} {matches} {value}。匹配類型:等于(equals)、不等于(does not equal)、開始于(starts with)、結束于(ends with)、包含(contains)、不包含(does not contain)、已設置(is set)或未設置(is not set)。
- 事件的級別 {matches} {level}。匹配類型:等于(equal to)、小于(less than)或等于(equal to)、或大于(greater than)或等于(equal to)。
了解更多關于標簽(tags)和事件屬性(event attributes)的信息。
tags:https://docs.sentry.io/platforms/javascript/enriching-events/tags/
event attributes:https://docs.sentry.io/product/sentry-basics/search/searchable-properties/#event-properties
“然后(Then)”條件:動作
“Then conditions”或動作,指定滿足觸發器和過濾條件時應該發生的事情:
- 向問題所有者(Issue Owners)、團隊(a team)或成員(a member)發送通知。
- 向集成發送通知,其中可以包含以下選項,具體取決于您安裝的集成:
- 發送 Slack 通知
- 發送 PagerDuty 通知
- 發送 Microsoft Teams 通知
- 向所有舊集成發送通知。
- 使用集成平臺上構建的集成發送通知
- 為集成創建一個 issue,其中包括:
- https://docs.sentry.io/product/integrations/source-code-mgmt/azure-devops
- https://docs.sentry.io/product/integrations/project-mgmt/jira/
- Jira
- Azure DevOps
了解有關通過集成路由警報的更多信息。
- https://docs.sentry.io/product/alerts/create-alerts/routing-alerts/
Issue 所有者
Issue 所有者可以在觸發警報時收到通知(僅限電子郵件)。
對于早期采用者,這些通知是通過電子郵件或 Slack 接收的,具體取決于問題所有者的通知設置。
- Issue owners:https://docs.sentry.io/product/issues/issue-owners/
- notification settings:https://docs.sentry.io/product/alerts/notifications/notification-settings/
如果未配置或未找到 issue 所有者,則不會發送通知或將其發送給所有項目成員,具體取決于 [項目]>設置>問題所有者([Project]>Settings>Issue Owners) 中的以下設置。
團隊 Slack 通知
團隊可以配置 Slack channel 來接收警報通知。這可以通過在所需的 Slack channel 中鍵入 /sentry link team 來完成。要在 sentry.io 中查看團隊關聯的 Slack 頻道,請導航到 設置>團隊>[團隊]>通知(Settings>Teams>[Team]>Notifications)。
動作間隔(速率限制)
動作間隔(action interval)或速率限制(rate limit)控制針對特定問題觸發警報規則的頻率。如果警報條件與問題匹配,Sentry 只執行在速率限制期限內尚未針對該問題執行的動作。例如,如果一個問題在一分鐘的時間內多次滿足警報條件,但是您的頻率閾值是一分鐘,那么您只會收到一次警報。
可用的間隔是:
- 分鐘:5, 10, 30, 60
- 小時:3, 12, 24
- 天:7, 30
項目級警報設置
在 [項目] > 設置 > 警報([Project] > Settings > Alerts) 中,您可以配置警報電子郵件主題模板和摘要設置。擁有 owner、manager 或管理員權限(admin permissions)及以上權限的 Sentry 用戶可以更改這些默認通知設置。
摘要
摘要功能僅適用于 issue 警報電子郵件(不是通過集成發送的通知),并且與動作間隔(action interval)不同,它限制為項目發送的警報電子郵件總數。此項目級設置允許您控制警報的最小和最大交付間隔。
指標警報配置
Sentry 提供了多個配置選項來根據您組織的需要創建指標警報。
過濾器
以下過濾器組轉換為 Discover 查詢,顯示在警報配置頁面頂部的圖表中。
環境
指定哪些環境將使用此特定警報規則。此控件過濾事件中的 environment 標簽。例如,此過濾器很有用,因為您應用于生產警報的緊迫性和工作流程可能不同于您應用于源自 QA 環境的警報的緊急程度和工作流程。
此處的 “Env:” 下拉列表與全局 “Environment” 下拉列表中所選項目的可用環境相同(不包括隱藏環境)。選擇 “全部(All)” 相當于沒有環境過濾器。
事件類型
對于某些指標警報,您可以在“事件(Events)”下拉列表中設置要收到警報的事件類型:
- event.type:error OR event.type:default
- event.type:default
- event.type:error
- event.type:transaction
標簽(Tag) & 屬性(Attribute)
在提供的字段中添加過濾器以縮小您將收到警報的范圍,例如 URL、標簽或其他事件屬性。
指標(函數 + 時間間隔)
根據您選擇的警報類型,您可以選擇要應用的函數和參數。在其他情況下,該功能內置于警報中,并且不顯示設置。例如,如果您選擇“受影響的用戶數(Number of Users Affected)”,則轉換為函數 count_unique(user.id)。由于編輯此函數會改變警報的性質,因此它不可編輯,因此被隱藏。
警報函數
- count()
- count_unique(...)
- avg(...)
- percentile(...)
- failure_rate()
- apdex(...)
- count()
- p50()
- p75()
- p95()
- p99()
- p100()
時間間隔
選擇評估指標的時間段。您的選擇范圍從一分鐘到一天。 Sentry 每分鐘評估指定的窗口。例如,如果您指定一個小時時間窗口,Sentry 會評估:
- At 3:00pm: 2:00pm - 3:00pm
- At 3:01pm: 2:01pm - 3:01pm
- At 3:02pm: 2:02pm - 3:02pm
- ...
閾值
閾值是幫助定義警報觸發器的數值。這些數值被標記為:
- Critical(嚴重)
- Warning(警告)
- Resolved(已解決)
您必須設置 “Warning” 閾值,使其在 “Critical” 閾值之前觸發。當 Sentry 評估警報時,警報的狀態會更新為匹配的最高嚴重性觸發器。如果您未設置 “Resolved” 閾值,警報將在不再違反 “Critical” 或 “Warning” 條件時自動解決。您還可以手動解決警報。
自動解決
默認情況下,當指定的指標不再違反 “Critical” 或 “Warning” 條件時,會自動解決指標警報。但是,您可以設置不同的分辨率閾值。例如,假設您的應用程序的正常錯誤級別低于 2000/分鐘,并且您希望在超過 5000/分鐘 時收到警報。您可能希望警報僅在錯誤級別回到 2000/分鐘 以下時 resolve,而不是 5000/分鐘。通過以這種方式設置 “Resolved” 閾值,如果錯誤級別回落到僅 4000/分鐘,即使它低于警報閾值,您也會認為這是有問題的,警報將不會 resolve。
動作
動作定義了您和您的團隊將如何收到警報:
- 向成員(member)或團隊(team)發送電子郵件。如果發送給成員(team),則成員(team)的個人項目警報選擇退出設置(opt-out settings)將被覆蓋。
- 發送 Slack 通知
https://docs.sentry.io/product/integrations/notification-incidents/slack/
- 發送 PagerDuty 通知
https://docs.sentry.io/product/integrations/notification-incidents/pagerduty/
- 發送 Microsoft Teams 通知
https://docs.sentry.io/product/integrations/notification-incidents/msteams/
- 使用內部集成發送請求。
https://docs.sentry.io/product/integrations/integration-platform/#internal-integrations
- 了解有關通過集成路由警報的更多信息。
https://docs.sentry.io/product/alerts/create-alerts/routing-alerts/
規則名稱
為您的警報指定一個描述性名稱,例如受影響的團隊和警報的主題。例如,“前端延遲(Frontend Latency)”、“后端故障率(Backend Failure Rate)”或“計費 Apdex(Billing Apdex)”。
團隊
您可以選擇要與警報關聯的團隊,以便該團隊的成員可以編輯此警報。請注意,只有當您是團隊成員時才能進行此關聯。如果未選擇任何團隊,則任何人都可以編輯警報。
帶有集成的警報路由
通過定制警報規則并集成您已經使用的工具,您可以在需要的時候when、地點where(以及是否if)收到警報,而不會受到干擾。警報通知可以路由到 Slack,多個支持的集成,以及通過 webhooks 定制集成。在創建警報規則時,您可以使用這些集成來配置通知誰以及如何通知。
集成
Sentry 的集成為您提供了通過 Slack、PagerDuty 和 Microsoft Teams 等常用應用程序路由警報的選項。您可以在 設置 > 集成(Settings > Integrations) 中找到這些集成,并為整個組織安裝它們。
Slack 警報
Sentry 組織 owner 或 manager 可以在其 Sentry 帳戶中安裝和配置 Slack 集成。配置集成后,issue 警報規則中將提供以下動作:向 {workspace} Slack 工作區發送通知至 {channel} 并在通知中顯示標簽 {tags}。在指標警報中,您的 Slack 團隊將在 action 下拉列表之一中可用。
此 alert action 允許您將警報通知路由到 Slack 工作區中的選定頻道(使用 # 前綴)或直接消息中的特定用戶(使用 @ 前綴)。
然后,一旦您收到 Slack 通知,您可以使用 “Resolve”、“Ignore” 或 “Assign” 按鈕直接從 Slack 更新 sentry.io 中的問題。
PagerDuty 警報
Sentry 組織 owner 或 manager 可以在其 Sentry 帳戶中安裝和配置 PagerDuty 集成。配置集成后,issue 警報規則中將提供以下動作:向 PagerDuty 帳戶 {account} 和服務 {service} 發送通知。在指標警報中,您的 PagerDuty 帳戶將在 action 下拉列表之一中可用。
Microsoft Teams 警報
Sentry 組織 owner 或 manager 可以在其 Sentry 帳戶中安裝和配置 Microsoft Teams。配置集成后,issue 警報規則中將提供以下動作:向 {team} 團隊發送通知至 {channel(s)}。在指標警報中,您的 Microsoft 團隊將在 action 下拉列表之一中可用。
構建您自己的集成
如果您想將警報通知路由到 Sentry 沒有開箱即用集成的其他解決方案,您可以使用 Integration Platform。集成平臺為外部服務提供了一種使用 REST API 和 Webhook 與 Sentry SaaS 服務交互的方法。
如果您想從不同的監控系統匯總警報或編寫自定義規則以更智能地路由警報,則向 webhook 發送警報也很有幫助。
當您創建新的集成并在其上啟用“Alert Rule Action”選項時,當您選擇在 issue 警報規則創建期間通過集成 action 發送通知時,您的集成將顯示為服務。在指標警報中,您的集成在 action 下拉列表之一中可用。
遺留集成
遺留集成(也稱為插件)是 Sentry 的擴展,打包為 Python 庫,并在項目級進行配置。要向遺留集成發送警報,請選擇 “Send a notification via an integration” 或 “Send a notification to all legacy integrations” 動作。您不能將指標警報路由到遺留集成。
警報最佳實踐
警報在正確的時間通知正確的人非常重要。向太多人發送太多通知可能會導致這些通知被忽略。以下最佳實踐將幫助您創建或微調警報以最大程度地減少警報噪音,同時仍會告訴您需要了解的內容。
檢測重要問題
頻率(Frequency) :通常,您會設置警報以在錯誤超過特定頻率時觸發,但頻率并不是一切:如果低頻錯誤位于應用程序的更重要部分,則它可能比高頻錯誤更重要。
受影響的用戶(Users affected):有時極少數用戶會產生大量錯誤,因此提醒受影響的用戶可能比錯誤頻率更重要。然而,并非所有在 Sentry 中有用戶計數的錯誤實際上都可能是面向用戶的,反之亦然。如果您過濾這些類型的問題,您就可以避免收到非用戶面臨的錯誤的警報。
標簽(Tags):使用標簽對錯誤進行分類。例如,您可以過濾自動捕獲的 url 標簽以識別關鍵業務頁面,或過濾自定義標簽(如 customer_type)以更重要地處理這些警報。您可以在 [項目] > 設置 > 標簽([Project] > Settings > Tags) 下找到項目中可用的標簽列表。該列表是該項目事件中遇到的所有標簽 key(默認和自定義)的聚合。
降低警報噪音
這些最佳實踐可幫助您減少 issue 警報可能產生的噪音,但不適用于指標警報。
看到相同的警報(Seeing the same alerts):如果您反復看到以前看過的警報,請嘗試將您的 issue 警報過濾為過去幾天創建的問題,使用 The issue is older or newer than... 過濾器。
瞬態警報(Transient alerts):要過濾掉僅快速連續發生幾次且不再發生的 transient issues,請在您的 issue 警報中使用 Issue has happened at least {X} times 過濾器。
限制為最新版本(Limit to latest release):使用 The event is from the latest release 過濾器將您的 issue 警報僅應用于最新版本。
使用“For Review”列表(Use the “For Review” list):新 issue 和未解決的 issue 通常是您想知道的,但它們會產生很多噪音。Sentry 問題列表中的 “For Review” 選項卡會顯示這些問題,因此您可以使用電子郵件和集成來發出更高緊急性的警報,同時確保這些低緊急性問題不會被忽視。我們建議每天查看一次 “For Review” 列表。此列表顯示:
- 新 Issue
- 回歸(issue 從 “Resolved”->“Unresolved” 更改狀態)
- 滿足忽略條件的 issue(issue 狀態從 Ignored -> Unresolved)
已忽略 Issue
您可以忽略 issue 以減少噪音,但是,當滿足警報條件時,忽略的問題不會觸發警報;它們反而變成 unresolved 并出現在“For Review”列表中。因此,如果您擔心遺漏這些問題,請使用 An issue changes state from ignore to unresolved 觸發器創建問題警報。
路由
問題所有者(Issue owners) :使用 issue owners 讓 Sentry 自動向合適的人發送警報,并減輕配置負擔。您可以在 [項目] > 設置 > 問題所有者( [Project] > Settings > Issue Owners) 中配置所有權規則。當沒有匹配的所有者時,警報默認發送給所有項目成員。如果這太寬泛,并且您希望特定所有者作為后備,請以 *:
不同優先級的發送方式(Delivery methods for different priorities) :使用不同的發送方式來區分不同優先級的告警。例如,您可以像這樣從最高優先級路由到最低優先級:
- 高優先級:頁面(PagerDuty 或 OpsGenie)
- 中等優先級:聊天應用(Slack)
- 低優先級:Email
問題列表中的 “For Review” 選項卡是您可以在不接收任何警報的情況下檢查優先級最低的問題的位置。
構建集成:如果您想將警報通知路由到 Sentry 還沒有開箱即用集成的解決方案,您可以使用 Integration Platform。創建集成時,它將在 alert actions 菜單中可用。您可能希望將自己的集成用于:
向原生不支持的集成發送警報
聚合來自不同監控系統的警報
在 webhook 處理程序中編寫自定義規則以更智能地路由警報
通知
Sentry 向您發送有關工作流活動、發布部署和配額使用情況的通知,以及每周報告。這些通知讓您了解:
工作流(Workflow):涉及用戶操作和 issue 狀態更改的活動。這包括 issue 解決、分配、評論和回歸等活動。
部署(Deploy):當您提交的版本被部署時。
配額(Quota):接近配額、超出配額和尖峰保護。
每周報告(Weekly Reports):您組織的 Sentry 活動摘要。
您可以在 用戶設置 > 通知(User Settings > Notifications) 中管理這些通知。
工作流通知
Sentry 發送工作流通知,讓您了解 issue 狀態更改。工作流與幫助您管理問題的動作相關,例如更改 issue 的狀態或對其發表評論。默認情況下,Sentry 通過電子郵件將這些通知發送給訂閱該問題的成員(有關如何確定訂閱,請參見下文)。發送工作流通知:
- 問題已解決(Issue Resolved):當您的代碼中發現新 issue 時,它處于 Unresolved 狀態。當項目團隊成員通過在 sentry.io 中手動更改其狀態或提交修復程序或由于項目的自動解決功能(如果已配置)解決 issue 時,issue 狀態將更改為已解決。
- 回歸(Regressions):當 issue 的狀態從 “Resolved” 變回 “Unresolved” 時,就會發生回歸。將向所有項目團隊成員發送一封電子郵件。
- 評論(Comments):當團隊成員在 issue 詳細信息頁面的 “Activity” 選項卡中添加新評論時。
- 分配(Assignment):當一個問題被分配或未分配時。
- 用戶反饋(User Feedback):當一個 issue 有新的用戶反饋時。
- 事件處理問題(Event Processing Problems):當您發送給 Sentry 的錯誤事件處理出現問題時。
當您訂閱 issue 時,您會收到工作流通知,并且您通過以下方式訂閱問題:
- 單擊 issue 上的訂閱鈴鐺(subscribe bell)圖標
- 參與與 issue 相關的提交
- 對 issue 發表評論或添加書簽
- 在 issue 中提及您或您的團隊
- 您或您的團隊被分配到該 issue
這些通知可能與為項目配置的警報有一些重疊。
部署通知
Sentry 向已提交已部署版本的用戶發送部署通知。在部署文檔中了解更多信息。
https://docs.sentry.io/product/releases/setup/#notify-sentry
配額通知
在以下情況下,Sentry 會向組織的所有所有者發送配額通知:
- 組織的 80% 的錯誤、事務和附件量已耗盡。
- 錯誤或事務超過了組織的配額,其中包括按需容量
您無法更改或禁用這些通知。在完整的配額文檔中了解更多信息。
- https://docs.sentry.io/product/accounts/quotas/
每周報告
Sentry 每周一通過電子郵件發送每周報告。報告包含您組織在上周的 Sentry 活動摘要。
個人通知設置
您可以在您的帳戶設置中調整您的個人工作流程并部署通知以及您的個人 issue 警報設置。通過導航到 用戶設置 > 通知(User Settings > Notifications) 來管理您的通知。您無法配置配額通知。
警報
此設置不會影響配置為明確發送到您的電子郵件的警報。
在通知中,您可以全局打開和關閉 issue 警報通知。
您還可以通過選擇 “Default” 、“On” 或 “Off” 來對每個項目的警報通知進行微調。如果您選擇 “Default”,項目的設置將與您的全局設置相同。
交付方式
您可以通過從以下選項中進行選擇來決定在何處接收個人警報通知:
- 發送到 Email
- 發送到 Slack
- 發送到 Email 和 Slack
如果您的組織安裝了 integration 并且您的 Slack 身份已鏈接到您的 Sentry 帳戶,則 Slack 僅可用作交付方式。
- https://docs.sentry.io/product/integrations/notification-incidents/slack/#linking-your-slack-and-sentry-accounts
工作流
工作流通知的全局設置是:
- Always(總是)
- Only On Issues I Subscribe To(僅在我訂閱的問題上)
- Never(從不)
您可以通過選擇以上三個選項之一或 “Default” 來針對每個項目微調您的工作流程通知。如果您選擇 “Default”,項目的設置將與您的全局設置相同。
交付方式
您可以通過從以下選項中進行選擇來決定在何處接收個人工作流通知:
- 發送到 Email
- 發送到 Slack
- 發送到 Email 和 Slack
如果您的組織安裝了集成并且您的 Slack 身份已鏈接到您的 Sentry 帳戶,則 Slack 僅可用作交付方式。
取消訂閱
要退出特定問題的工作流通知,請單擊問題頁面頂部的訂閱鈴鐺圖標。
Email 路由
電子郵件路由控制每個項目的通知發送到的電子郵件地址。這些通知默認為您在設置 Sentry 帳戶時提供的電子郵件地址。此設置允許您基于每個項目將電子郵件路由到備用電子郵件地址。
每周報告
報告包含您組織在上周的 Sentry 活動摘要。您可以通過為每個組織打開或關閉報告來微調您的每周報告。
部署
部署通知的全局設置是:
- On
- Only On Deploys With My Commits(僅在我提交的部署上)
- Off
您可以通過選擇上述三個選項之一或 “Default” 來對每個組織的部署通知進行微調。如果您選擇 “Default”,組織的設置將與您的全局設置相同。
交付方式
您可以通過從以下選項中進行選擇來決定在何處接收個人工作流通知:
- 發送到 Email
- 發送到 Slack
- 發送到 Email 和 Slack
如果您的組織安裝了集成并且您的 Slack 身份已鏈接到您的 Sentry 帳戶,則 Slack 僅可用作交付方式。
我的活動
使用切換開關來控制您是否收到有關以下內容的通知:
- 您在使用 sentry.io 時的動作
- 您已解決的無人認領 issue 的任何更改