回覆列表
  • 1 # 烏魯木齊新華學校

      在系統的維護或排查問題時,我們檢查使用一些必要的手段列印日誌以方便技術人員跟蹤處理流程。一般軟體系統或作業系統都會支援類似的方式幫助技術人員排查處理流程。在開源軟交換Kamalio/OpenSIPS中也同樣支援類似的功能幫助技術人員排查呼叫的流程。append_hf() 就是一個非常方便的方法來列印呼叫流程設定。筆者在本講座中簡單介紹一下如何使用append_hf(),以及如何透過抓包工具來查詢插入的字串資訊。

      首先讓我們解釋一下具體的使用方式和其cfg配置檔案的用法(完整的本案例配置檔案為會晚一點上傳到www.kamailio.org.cn)。append_hf() 函式的作用是在SIP頭中新增相應的字串,幫助使用者能夠判斷整體呼叫流程的狀態,方便技術人員排查問題。具體的用法是:append_hf(txt, hdr)  txt - Header field to be appended. The value can contain pseudo-variables which will be replaced at run time.hdr - Header name after which the "txt" is appended.  在本講座中,我們使用四個追加的資訊來跟蹤呼叫流程:append_hf("P-hint: (1)sequential request/rr-enforced \r\n");append_hf("P-hint: (2)initial request/usrloc applied\r\n");append_hf("P-hint: (3)reply thru onreply_route[2]\r\n");append_hf("P-hint: (4)new request in failure_route[2]\r\n");  透過對SIP頭新增以上四個跟蹤資訊,整個呼叫流程會實現以下流程:  現在,讓我們開始具體的測試步驟。開始測試前,讀者需要更新到本案例中的cfg檔案,重新載入一次cfg檔案。然後使用此命令對埠進行抓包儲存:  ngrep –p –q –W byline port 5060 >rr-stateful  執行以上命令後,使用已註冊兩個分機進行分機呼叫。呼叫完成後,停止ngrep命令。透過儲存的日誌檔案檢視我們的列印跟蹤記錄。讀者會看到我們在cfg檔案中設定的列印字串資訊。

  • 中秋節和大豐收的關聯?
  • 別人主動上門推銷保險靠不靠譜?