zc.monitor

軟件截圖:
zc.monitor
軟件詳細信息:
版本: 0.3.1
上傳日期: 14 Apr 15
開發: Jim Fulton
許可: 免費
人氣: 1

Rating: nan/5 (Total Votes: 0)

zc.monitor是提供了一個命令行界面來請求信息&NBSP各個位的服務器;服務器是基於zc.ngi,所以我們可以使用zc.ngi測試基礎設施來證明它。
  >>>進口zc.ngi.testing
  >>>進口zc.monitor
  >>>連接= zc.ngi.testing.TextConnection()
  >>>服務器= zc.monitor.Server(連接)
該服務器支持可擴展的命令集。它查找命令,命名zc.monitor.interfaces.IMonitorPlugin“公用事業”,由zope.component包的定義。
看到這一點,我們將創建一個Hello插件:
  >>>高清你好(連接,名字=“世界”):
  ......“”“打個招呼
  ...
  ...提供一個名稱,如果你不是世界。
  ......“”“
  ... connection.write(“嗨%S,很高興見到你 N”%名稱)
並註冊:
  >>> zc.monitor.register(你好)
當我們註冊了一個命令,我們可以提供一個名稱。看到這一點,我們將重新註冊你好:
  >>> zc.monitor.register(你好,'喜')
現在,我們可以給hello命令到服務器:
  >>> connection.test_input(“喜 N')
 喜的世界,很高興認識你!
  - >關閉
我們可以通過一個名字:
  >>>連接= zc.ngi.testing.TextConnection()
  >>>服務器= zc.monitor.Server(連接)
  >>> connection.test_input('你好吉姆 N')
 嗨,吉姆,很高興認識你!
  - >關閉
服務器還附帶了一些基本的命令。讓我們來註冊它們,所以我們可以看到他們做什麼。我們將使用simplfied註冊界面:
  >>> zc.monitor.register_basics()
首先是help命令。給予幫助,無需投入,給出可用命令的列表:
  >>>連接= zc.ngi.testing.TextConnection()
  >>>服務器= zc.monitor.Server(連接)
  >>> connection.test_input(“幫助 N')
 支持的命令:
 你好 - 問好
 說明 - 獲取有關服務器命令的幫助
 喜 - 問好
 互動 - 打開顯示器的交互模式
 退出 - 退出顯示器
  - >關閉
我們可以通過指定命令名獲得詳細的幫助:
  >>>連接= zc.ngi.testing.TextConnection()
  >>>服務器= zc.monitor.Server(連接)
  >>> connection.test_input('幫幫忙 N')
 說明尋求幫助:
 
 獲取有關服務器命令的幫助
 
 默認情況下,命令和匯總清單打印出來。提供
 命令名稱來獲取一個命令的詳細資料。
 
  - >關閉
  >>>連接= zc.ngi.testing.TextConnection()
  >>>服務器= zc.monitor.Server(連接)
  >>> connection.test_input(“幫助你好 N')
 說明了招呼:
 
 打個招呼
 
 提供一個名稱,如果你不是世界。
 
  - >關閉
交互式命令切換到監控交互模式。如上述可見,顯示器通常響應一個命令,然後關閉連接。在“互動模式”,該​​連接不會關閉,直到退出命令使用。通過telnet診斷訪問顯示器時,這會很有用。
  >>>連接= zc.ngi.testing.TextConnection()
  >>>服務器= zc.monitor.Server(連接)
  >>> connection.test_input(“互動 N')
 在交互模式。使用“退出”退出。
  >>> connection.test_input(“幫助交互式 N')
 說明進行互動:
 
 打開顯示器的交互模式
 
 通常情況下,在監視器釋放一個命令後的連接。
 通過進入交互模式,這款顯示器會無法結束連接
 直到進入“退出”命令。
 
 在交互模式下,一個空行重複上一個命令。
 
  >>> connection.test_input(“幫助戒菸 N')
 說明了退出:
 
 退出顯示器
 
 這是只有在交互模式真正有用的(參見“互動”
 指令)。
 
注意,該命令的結果沒有結束“ - >關”,這將表示在關閉的連接。
還要注意,在交互模式可以讓你重複的命令。
  >>> connection.test_input('你好 N')
 喜的世界,很高興認識你!
  >>> connection.test_input(' N')
 喜的世界,很高興認識你!
  >>> connection.test_input('你好吉姆 N')
 嗨,吉姆,很高興認識你!
  >>> connection.test_input(' N')
 嗨,吉姆,很高興認識你!
現在,我們將使用退出關閉連接。
  >>> connection.test_input('退出 N')
 再見。
  - >關閉
最後,值得注意的是,異常將會產生連接上的回溯。
  >>>連接= zc.ngi.testing.TextConnection()
  >>>服務器= zc.monitor.Server(連接)
  >>> connection.test_input('你好吉姆·42 N')#文檔測試:+省略號
 回溯(最近通話最後一個):
  ...
 類型錯誤:你好()需要最多2個參數(3給出)
 
  - >關閉
命令循環
使用“MORE”模式,命令可以表明他們想要求今後所有的用戶輸入。我們將實現一個愚蠢的例子來說明它是如何工作的。
下面是實現了一個計算器的命令。
 '。“>>> PROMPT =
  >>>高清鈣(連接,*參數):
  ......如果的args和args [0] =='退出':
  ...返回zc.monitor.QUIT_MARKER
  ...
  ......如果ARGS:
  ... connection.write(STR(的eval(''加入(參數))))
  ... connection.write(' N')
  ...
  ... connection.write(提示)
  ...返回zc.monitor.MORE_MARKER
如果我們註冊這個命令......
  >>> zc.monitor.register(計算值)
......我們可以調用它,我們得到一個提示。
  >>>連接= zc.ngi.testing.TextConnection()
  >>>服務器= zc.monitor.Server(連接)
  >>> connection.test_input('鈣 N')
&NBSP ;.
如果我們再給予更多的投入,我們得到的結果加上另外的提示。
  >>> connection.test_input(“2 + 2 N')
  4
&NBSP ;.
  >>> connection.test_input(“4 * 2 N')
  8
&NBSP ;.
一旦我們完成了,我們可以告訴計算器,讓我們一起去。
  >>> connection.test_input('退出 N')
  - >關閉
啟動服務器
  >>>進口時間
  >>>進口zope.testing.loggingsupport,記錄
  >>> loghandler = zope.testing.loggingsupport.InstalledHandler(
  ......無,水平= logging.INFO)
  >>> zc.monitor.start(9644)
 ('',9644)
  >>>打印loghandler
  zc.ngi.async.server INFO
 監聽('',9644)
  >>> zc.monitor.last_listener.close()
  >>> zc.monitor.last_listener =無
  >>> time.sleep(0.1)
  >>> loghandler.clear()
  >>> zc.monitor.start((“127.0.0.1”,9644))
 (“127.0.0.1”,9644)
  >>>打印loghandler
  zc.ngi.async.server INFO
 監聽(“127.0.0.1”,9644)
  >>> zc.monitor.last_listener.close()
  >>> zc.monitor.last_listener =無
  >>> time.sleep(0.1)
綁定端口0:
  >>> ADDR = zc.monitor.start(0)
  >>>地址== zc.monitor.last_listener.address
 真
  >>> zc.monitor.last_listener.close()
  >>> zc.monitor.last_listener =無
  >>> time.sleep(0.1)
試圖重新綁定到正在使用的端口:
  >>> loghandler.clear()
  >>> zc.monitor.start((“127.0.0.1”,9644))
 (“127.0.0.1”,9644)
  >>> zc.monitor.start((“127.0.0.1”,9644))
 假
  >>>打印loghandler
  zc.ngi.async.server INFO
 監聽(“127.0.0.1”,9644)
  zc.ngi.async.server警告
 無法在聽(“127.0.0.1”,9644)
 根警告
 無法啟動zc.monitor服務器,因為該地址(“127.0.0.1”,9644)是在使用中。
  >>> zc.monitor.last_listener.close()
  >>> zc.monitor.last_listener =無
  >>> time.sleep(0.1)
  >>> loghandler.uninstall()

什麼在此版本中是新的

  • 在當綁定顯示器到Unix域套接字,刪除現有的插座在同一路徑,以便綁定成功。這可能會影響現有的使用相對於zopectl調試行為,但會更具可預測性。

什麼在0.3.0版本新

  • 在增加了一個簡化的註冊界面

要求

  • 在Python中

類似的軟件

HP-HW-RAID
HP-HW-RAID

14 Apr 15

FTP Monitor
FTP Monitor

3 Jun 15

perfmetrics
perfmetrics

20 Feb 15

顯影劑的其他軟件 Jim Fulton

zc.s3uploadqueue
zc.s3uploadqueue

20 Feb 15

zc.zope3recipes
zc.zope3recipes

14 Apr 15

zc.resumelb
zc.resumelb

20 Feb 15

意見 zc.monitor

評論沒有發現
添加評論
打開圖片!