nagios二次開發(三)---nagiosql架構簡介

來源:互聯網
上載者:User

標籤:style   blog   http   io   ar   color   os   使用   sp   

NAGIOSQL資料庫結構簡介

個人覺得如果瞭解一個系統的架構,應該先從資料庫著手,因為資料庫是靈魂,當然前提是這個系統用到了資料庫。剛才說到了架構,其實我還真不知架構到底是個什麼東東,也不知第一句話說的是否在理,因為我確實不懂開發,更沒瞭解過某個系統的架構。嘿嘿。

先來個mysql資料庫表的,見1.4



這個中的表就是nagiosql所用到的表,在二次開發過程中請儘可能的使用系統預設的表,因為這樣可以最少的減小系統的出錯機率,但是如果在表中加欄位時請謹慎。因為一個主要原因就是 :nagiosql是會寫設定檔的,在寫設定檔過程中,它會select * from table的,哈哈。(之後的文章,我會介紹解決的辦法!)

下面簡單介紹下圈起來的幾個表,他們都是常用到的,tbl_是預設的首碼,tbl_lnk表示關聯表:



NAGIOSQL源碼結構簡介


源碼結構如:


註:其它未標註檔案為自動產生的配置。


NAGIOSQL運行時

預設的nagiosql所展示的每個頁面都是通過templates目錄下的tpl.htm模板展現的。nagiosql通過一個叫做HTML_Template_IT的模板類去處理模板的載入、分析、配置、展現。不得不說這個模板處理的機制已經很古董了,除了思想與現在的模板使用基本一致外,我想這個類的使用現在應該已經被人遺忘的差不多了,因為它確實不是很主流,以至於各種找不到介紹與使用它的資料。如需想瞭解更多可訪問http://pear.php.net/manual/en/package.html.html-template-it.php。

nagiosql首次啟動並執行時候,index.php頁面會首先載入functions/prepend_adm.php檔案,並通過此頁面中的session_start()方法設定session資訊。而登入後的狀態儲存及許可權控制也基本全是基於session進行的,這也完全歸功於php強大的session功能。prepend_adm.php檔案控制著全域的頁面顯示,它是通用範本(包括檔案頭,頁尾)main.tpl.htm的資料來源。functions/nag_class.php則控制著左側菜單及插入、刪除、更改頁面的資料來源。admin_master.tpl.htm模板頁則控制著每個頁面的主內容。

它們的對應關係的簡要如下:




 

 

請朋友們轉載時註明出處,因為我是為了更好的方便大家來和我討論。謝謝了。

 

意見及建議:[email protected]

nagios二次開發(三)---nagiosql架構簡介

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.