簡介
開源錯誤跟蹤煌寇,幫助開發(fā)人員實時監(jiān)控和修復崩潰茧妒。不斷重復姿骏。提高效率。改善用戶體驗豹悬。
特性
- 相同錯誤合并
- 定制規(guī)則進行郵件通知
- 支持導入sourcemap自動解析和還原代碼
- 多項目葵陵,多用戶
- 友好的Web界面
- 支持主流的語言接口
- 權(quán)限管理
- 敏感信息過濾
- 受影響用戶統(tǒng)計
- WEB可視化設(shè)置,功能強大
- ...
部署
使用docker-compose命令一鍵進行部署瞻佛。減少部署的錯誤率脱篙。
具體部署程序可查看getsentry/onpremise
使用nginx接受請求并對其進行轉(zhuǎn)發(fā)。并使用了ngx_http_realip_module
模塊轉(zhuǎn)發(fā)真實請求IP伤柄。
流程
sentry分為客戶端和服務端绊困。客戶端嵌入到App中适刀,當應用發(fā)生異常的情況時秤朗,就會向服務器端發(fā)送異常通知,服務器端則將信息記錄到數(shù)據(jù)庫匯總笔喉,并提供web方式取视,方便對異常進行查看和分析,避免需要登錄服務器后臺查看生硬的log文件常挚。
收集日志
- 客戶端運行錯誤日志
- Android
- IOS
- HTML
- 服務器端項目運行錯誤日志
- PHP
- Web環(huán)境錯誤日志
- PHP-fPM錯誤日志
- Nginx錯誤日志
目前的日志捕獲作谭,都有相應的SDK,非常方便奄毡,不同的是客戶端因為有代碼混淆折欠,所以,需要在sentry中上傳相應sourcemap文件。
目前的PHP-FPM和Nginx錯誤日志沒有現(xiàn)成的代碼锐秦,這里需要一些時間進行編寫代碼處理相關(guān)錯誤咪奖。
適配
目前sentry有很多的SDK包。目前已經(jīng)覆蓋咱們產(chǎn)品線的有:
- Android
- Swift
- Objective-C
- JavaScript
- PHP
- Laravel
- ...
組織架構(gòu)
角色
行為[Action] | 會員[Member] | 管理員[Admin] | 經(jīng)理[Manager] | 所有者[Owner ] |
---|---|---|---|---|
Can view and act on issues, such as assigning/resolving/etc. | ?? | ?? | ?? | ?? |
可以加入和離開團隊[Can join and leave teams] | ?? | ?? | ?? | ?? |
可以修改項目設(shè)置[Can change Project Settings] | ?? | ?? | ?? | |
可以添加/刪除項目[Can add/remove projects] | ?? | ?? | ?? | |
可以編輯全局集成[Can edit Global Integrations] | ?? | ?? | ||
可以添加/刪除/修改成員[Can add/remove/change members] | ?? | ?? | ||
可以添加/刪除團隊[Can add/remove teams] | ?? | ?? | ||
可以添加倉庫[Can add Repositories] | ?? | ?? | ||
可以改變組織設(shè)置[Can change Organization Settings] | ?? | ?? | ||
可以移除一個組織[Can remove an Organization] | ?? |
歸屬關(guān)系
一個組織對應多個團隊
一個團隊對應多個項目
一個團隊對應多個會員
一個會員屬于多個團隊
一個項目屬于一個團隊
郵件通知
默認情況下农猬,一旦異常發(fā)生赡艰,5分鐘內(nèi)就會有一封郵件發(fā)送到你的郵箱售淡。包含了異常的大致描述斤葱。
目前的默認規(guī)則是當出現(xiàn)一個新的規(guī)則時候,30分鐘內(nèi)發(fā)送一次郵件通知揖闸。
對于發(fā)送郵件的規(guī)則可以進行新增/編輯/移除揍堕。
限制
- 不能作為日志的替代品。
sentry主要是為讓我們專注于系統(tǒng)和程序的異常信息汤纸,提高排查效率衩茸,日志事件的量達到一個限制值的時候可能還會丟棄一些內(nèi)容。官方也提倡正確設(shè)置sentry接收的日志level的等級時贮泞,也能繼續(xù)舊的日志備份楞慈。 - 不是排查的萬能工具
sentry是帶有問題聚合功能的分析工具,所以如果樣本提供的內(nèi)容不全面啃擦。日志記錄的質(zhì)量不高的情況囊蓝,對于錯誤的快速排查,可能沒有實質(zhì)性的幫助令蛉。 - 不能作為傳統(tǒng)監(jiān)控的替代品
與傳統(tǒng)監(jiān)控系統(tǒng)相比聚霜,sentry更依賴發(fā)出的日志報告,而另外一些隱藏的邏輯問題或者業(yè)務問題可能不會得到反饋的珠叔。