您好,登錄后才能下訂單哦!
不管你用什么編程語言,都會面臨如何處理錯誤日志的問題。很多程序員對錯誤日志放任自流,直到出現故障了才追悔莫及,如果問小編怎么辦,我會給你推薦 Sentry!
什么是Sentry?
無論測試如何完善的程序,bug總是免不了會存在的,有些bug不是每次都會出現,測試時運行好好的代碼可能在某個用戶使用時就歇菜了,可是當程序在用戶面前崩潰時,你是看不到錯誤的,當然你會說:“Hey, 我有記日志呢?”
但是說實話,程序每天每時都在產生大量的日志,而且分布在各個服務器上,并且如果你有多個服務在維護的話,日志的數量之多你是看不過來的吧。等到某天某個用戶實在受不了了,打電話來咆哮的時候,你再去找日志你又會發現日志其實沒什么用:缺少上下文,不知道用戶什么操作導致的異常,異常太多(從不看日志的緣故)不知如何下手 等等。
Sentry就是來幫我們解決這個問題的,它是一款精致的Django應用,目的在于幫助開發人員從散落在多個不同服務器上毫無頭緒的日志文件里發掘活躍的異常,繼而找到潛在的“臭蟲”。
Sentry是一個日志平臺, 它分為客戶端和服務端,客戶端(目前客戶端有Python, PHP,C#, Ruby等多種語言)就嵌入在你的應用程序中間,程序出現異常就向服務端發送消息,服務端將消息記錄到數據庫中并提供一個web節目方便查看。Sentry由python編寫,源碼開放,性能卓越,易于擴展,目前著名的用戶有Disqus, Path, mozilla, Pinterest等。
為什么使用Sentry?
多項目,多用戶
界面友好
可以配置異常出發規則,例如發送郵件
支持主流語言接口
Sentry的權限介紹
Sentry目前用戶類型有四種: 超級管理員, 管理員,普通用戶和System agents. 超級用戶只能通過命令行來創建,其他用戶可以自己注冊或由其他用戶邀請注冊加入,然后由超級管理員或管理員分配項目和權限。為了更好支持團隊協助以及信息安全,
所謂Team就是一個團隊,一些用戶組織在一起對某些項目有操作權限的組織。一個項目只能屬于一個Team, 一個用戶卻可以屬于多個Team, 并可在不同Team中扮演不同角色, 如用戶A在Team X是管理員而在Team Y中是System agents. Sentry對用戶角色的指定只能到Team級別,不能到Project級別, 所以將某個用戶加入到某個Team之后,這個用戶就對所有所有屬于這個Team下所有project有了相同的權限。
Sentry的如此設計雖說不夠細致,但我們使用時只要遵照現實世界的情況來劃分Team和project即可。比如我們目前有一個團隊,這個團隊負責兩個項目,我們在Sentry上就建立一個Team A和屬于這個Team的project a和project b. 當在使用過程中我們發現project b的等級較高,不能讓所有人都可以看到信息,我們可以建立一個虛擬Team B,然后將project b的team 改Team B, 然后再給Team B添加用戶和相應權限即可. Sentry對team的owner, project的owner, project屬于的team 等等實體關系的修改都極為簡單,沒有副作用。
下面簡單介紹一下Sentry中各個類型用戶的權限:
超級管理員: 能創建各種用戶, team和project只能由超級管理員創建。項目的一些設置比如改變Owner, 數據公開可見與否(設為public的數據可以通過url不登陸也能查看)以及客戶端domain限制的設定。另外還有管理項目的api key(客戶端只有得到此api key才能向Sentry發送消息)的權限等等。
管理員: 能創建用戶, team和項目設定中除改變owner之外的權限, 可以對項目中具體數據做resolve, bookmark, public/public和remove操作。
普通用戶: 無Team界面,只能對項目中具體數據做resolve, bookmark, public/unpublic和remove操作。
System agents: 無Team界面,只能對項目中具體數據做bookmark, unpublic和remove操作。
Sentry的權限和實體設置基本可以滿足現實的需求:
1、如果一個團隊負責多個項目,可以通過一個Team多個項目方式來實現。
2、如果一個人參與多個團隊, 可以將該用戶添加到多個team中去。
3、一個team或project設置相應的Owner,則可以由此人負責該team或project內的活動。(唯一的缺點是team owner不可以創建project)
4、一個team或項目的分工應該是有一個管理者來設定項目的基本設定,管理api key, 并將api key分發給項目開發者,項目開發者以普通用戶身份登陸Sentry查看錯誤和resolve錯誤, 運維以System agents身份登陸Sentry查看系統運行狀態。
你是否已經開始找Sentry的下載資源了?別急,在好雨·云市就可以找到Sentry,而且不僅免費試用,還可以無需安裝一鍵使用,你還在等什么?掃描下方二維碼或點擊“閱讀全文”馬上使用Sentry吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。