zc.monitor

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

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中

類似的軟件

Conky
Conky

17 Feb 15

gocept.thermosnake
gocept.thermosnake

12 May 15

srmqt4
srmqt4

11 May 15

顯影劑的其他軟件 Jim Fulton

zc.zope3recipes
zc.zope3recipes

14 Apr 15

zc.s3uploadqueue
zc.s3uploadqueue

20 Feb 15

zc.resumelb
zc.resumelb

20 Feb 15

意見 zc.monitor

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