CE自動化例行維護工具開發01——總體構架搭建

      現在CE維護只有兩個人,面對幾百個CE設備的維護,確實讓人頭疼。之前已經開發完成了自動化腳本的製作,可是對LOG的解析這項工作就悄然來臨,如果做不了LOG日誌的解析,那麼之前的所有工作全部都浪費了,行百里者半九十…

一、CE維護規律總結

1)腳本執行的順序性

每個CE執行的指令都是嚴格按照一個順序開展的,比如第一條指令是dis device,第二條指令是 dis version,第三條指令是dis CPU……,在這個順序的基礎上可以通過主題函數的順序執行性做到控制:在每一個指令函數體內部加入一個判斷語句,決定是否跳出此函數體即可。

2)每個指令執行後結果的固定性

每一個CE設備的每一條指令執行完成後,LOG的日誌信息格式都是固定的,比如dis cpu,LOG結果呈現的內容是一致的,唯一變化的就是實際的 CPU的值是多少。其他指令類似。

3)同設備類型的重複性

每一個類型的CE設備執行的內容都是相同的,因此只要做到一個CE的解析,只需要用for循環的方式進行解決。

二、整體性搭建

根據上述的特點,制定總體的函數體架構如下

//函數定義部分架構

//健康檢查

public function getHealth(){

  for{

     lineString = getline;

      if lineString include”display trapbuffer” then exit,開始執行告警查詢

      else

      進行具體的條件判斷

     }

}

//告警查詢

public function getAlarm() {

  for{

     lineString = getline;

      if lineString include”display logbuffer” then exit開始執行日誌查詢部分

      else

      進行具體的條件判斷

     }

}

//日誌查詢

public function getLog() 

{

  for{

     lineString = getline;

      if lineString include”display logbuffer” then exit開始執行日誌查詢部分

      else

      進行具體的條件判斷

     }

}

……………

……………

main(){

   for{

 

     public function getHealth()

     public function getAlarm()

     public function getLog()

     ………………

     ………………

    }

}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章