參考資料來源
http://solar.ee.cyu.edu.tw/linux/opentools/c1359.html
Bug tracking system臭蟲追蹤也是一種程式歷史紀錄, 一個程式開發一定會有bug,對於後來維護人員,需要知道發生什麼原因, 怎麼解決的,是誰負責的等等資訊。 gnats是GNU發展的一套臭蟲追蹤系統,也包含了臭蟲回報(bug report)
通常臭蟲回報是developer與tester之間溝通的管道與記錄, 但也可以用在顧客的回報系統中, 這在customer這邊是非常快速的紀錄系統,客戶可以直接從web回報問題, 問題的紀錄也同時進入公司內部的系統。 產品經理可以根據這個在系統上的資訊,指派一個工程師來負責, 非常方便。所以他不僅可以用做程式臭蟲追蹤,也可以成為專案管理軟體。
gnats可以用普通的email就可以自動做回報的工作,也可以client/server的回報, 一個問題回報在gnats的術語叫PR(problem report)。一個PR通常有ID識別, 日期,狀態(open/closed),機密等級(confidential)等等元素
PR記錄也可以彙整進RDBMS(資料庫)
重要目錄與檔案
GNATS_ROOT
GNATS_ROOT是gnats管理的database目錄所在 如果是從source自己compile安裝的在 prefix/share/gnats/gnats-db 如果是rpm或deb這樣的distribution套件方法安裝 也可能在/var/lib/gnats/gnats-db下 這下面的檔案是gnats用來管理的
gnats-adm 目錄 |
categories |
SUPPORT SITE
安裝gnats prefix/share/gnats或/var/lib/gnats放了需要管理的project名單(categories) 裡面的檔案就是host名字也就是site(因為這是拿來做tech support) 每個檔案裡放了需要回報的專案名稱 例如我有一個檔 /var/lib/gnats/zeus的內容
gcc |
Email Alias
使用email回報時必需用email alias,在`/etc/aliases'裡 , 在gnats的機器建立一個email alias, 用像vacation的方法pipe到queue-pr這隻script來
gnats-admin: gnats |
# newaliases |
GNATS Demon
使用client/server方法時必需有gnatsd這隻deamon
/etc/services |
client - client端的使用者命令
Email回報PR
有下面四隻程式會被用到
send-pr 回報問題的人用的(tester, customer) |
SEND-PR: -*- send-pr -*- |
To: bugs@xxx (就是上面email aliases的address) |
用query-pr去看gnats database結果
query-pr |
M-x send-pr |
Client/Server回報PR
後記:公司的Bug tracking system要增加一個專案名稱,搞了我三天,原來是linux的權限問題,因為這個系統已經架好,只是要增加名稱,原來的負責架設的人終於出差回來,所以問題也迎刃而解,還是要好好學習linux。