zc.monitor

Szoftver screenshot:
zc.monitor
Szoftver adatai:
Változat: 0.3.1
Feltöltés dátuma: 14 Apr 15
Fejlesztő: Jim Fulton
Engedély: Ingyenes
Népszerűség: 59

Rating: nan/5 (Total Votes: 0)

zc.monitor egy szerver, amely a parancssori felület kérni különböző bit információt. & Nbsp; A szerver zc.ngi alapú, így tudjuk használni a zc.ngi tesztelés infrastruktúra bizonyítani azt.
& Nbsp; >>> import zc.ngi.testing
& Nbsp; >>> import zc.monitor
& Nbsp; >>> kapcsolat = zc.ngi.testing.TextConnection ()
& Nbsp; >>> server = zc.monitor.Server (kapcsolat)
A szerver támogatja a bővíthető parancsokat. Úgy néz ki, akár parancsokat elemzi zc.monitor.interfaces.IMonitorPlugin "közmű", ahogyan azt az zope.component csomagot.
Ahhoz hogy ezt hozunk létre a Hello plugin:
& Nbsp; >>> def hello (kapcsolat name = "világ"):
& Nbsp; ... "" "Köszönj
& Nbsp; ...
& Nbsp; ... Adjon meg egy nevet, ha nem a világ.
& Nbsp; ... "" "
& Nbsp; ... connection.write ("Hi% s, örülök, hogy találkoztunk ya! N"% name)
és regisztrálja azt:
& Nbsp; >>> zc.monitor.register (helló)
Amikor regisztrálja a parancsot, biztosítani tudjuk a nevét. Ahhoz hogy ezt fogjuk regisztrálni Hello újra:
& Nbsp; >>> zc.monitor.register (hello, "hi")
Most már tudjuk, hogy hello parancsot a szerver:
& Nbsp; >>> connection.test_input ("hi n")
& Nbsp; Hi világon, örülök, hogy találkoztunk ya!
& Nbsp; -> Bezárás
Tudjuk átadni a nevét:
& Nbsp; >>> kapcsolat = zc.ngi.testing.TextConnection ()
& Nbsp; >>> server = zc.monitor.Server (kapcsolat)
& Nbsp; >>> connection.test_input ('hello Jim n ")
& Nbsp; Hi Jim, örülök, hogy találkoztunk ya!
& Nbsp; -> Bezárás
A szerver csomag néhány alapvető parancsok. Nézzük regisztrálni őket, így láthatjuk, mit csinálnak. Mi most az simplfied regisztrációs felületen:
& Nbsp; >>> zc.monitor.register_basics ()
Az első a help parancsot. Segélynyújtástól hozzájárulása nélkül, ad egy listát a rendelkezésre álló parancsok:
& Nbsp; >>> kapcsolat = zc.ngi.testing.TextConnection ()
& Nbsp; >>> server = zc.monitor.Server (kapcsolat)
& Nbsp; >>> connection.test_input ("help n")
& Nbsp; A támogatott parancsok:
& Nbsp; helló - Say Hello
& Nbsp; segítségével - Segítség a szerver parancsok
& Nbsp; hi - Say Hello
& Nbsp; interaktív - Kapcsolja be a monitor interaktív módban
& Nbsp; kilép - Lépjen ki a monitor
& Nbsp; -> Bezárás
Mi is kap részletes segítséget megad egy parancs neve:
& Nbsp; >>> kapcsolat = zc.ngi.testing.TextConnection ()
& Nbsp; >>> server = zc.monitor.Server (kapcsolat)
& Nbsp; >>> connection.test_input ("help n")
& Nbsp; Segíts segítséget:
& Nbsp;
& Nbsp; Segítség a szerver parancsok
& Nbsp;
& Nbsp; Alapértelmezésben a parancsok listáját és összefoglalók van nyomtatva. Ad
& Nbsp; A parancs nevét, hogy részletes dokumentációját a parancsot.
& Nbsp;
& Nbsp; -> Bezárás
& Nbsp; >>> kapcsolat = zc.ngi.testing.TextConnection ()
& Nbsp; >>> server = zc.monitor.Server (kapcsolat)
& Nbsp; >>> connection.test_input ('help Hello n ")
& Nbsp; Segítség hello:
& Nbsp;
& Nbsp; Köszönj
& Nbsp;
& Nbsp; Adjon meg egy nevet, ha nem a világ.
& Nbsp;
& Nbsp; -> Bezárás
Az interaktív parancs kikapcsolja a monitort interaktív módban. Mint láttuk, a monitor általában reagál egy parancsot, és lezárja a kapcsolatot. A "interaktív mód", a kapcsolat nincs lezárva, amíg a kilépés parancsot használjuk. Ez akkor lehet hasznos, ha hozzáférését a monitor keresztül telnet diagnosztikához.
& Nbsp; >>> kapcsolat = zc.ngi.testing.TextConnection ()
& Nbsp; >>> server = zc.monitor.Server (kapcsolat)
& Nbsp; >>> connection.test_input ("interaktív n")
& Nbsp; Interaktív módban. Használd a "kilépés" gombra.
& Nbsp; >>> connection.test_input ("segítsen interaktív n")
& Nbsp; Segíts az interaktív:
& Nbsp;
& Nbsp; Kapcsolja be a monitor interaktív módban
& Nbsp;
& Nbsp; Normális esetben a monitor szabadítja fel a kapcsolatot, miután egy paranccsal.
& Nbsp; A belépő az interaktív módban a monitor nem ér véget a kapcsolat
& Nbsp; amíg meg nem adja a "kilépés" parancsot.
& Nbsp;
& Nbsp; Az interaktív módban, egy üres sor megismétli az utolsó parancsot.
& Nbsp;
& Nbsp; >>> connection.test_input ("segítsen leszokni n")
& Nbsp; Segíts kilépni:
& Nbsp;
& Nbsp; Lépjen ki a monitor
& Nbsp;
& Nbsp; Ez csak igazán hasznos interaktív módban (lásd a "interaktív"
& Nbsp; parancs).
& Nbsp;
Figyeljük meg, hogy az eredmény a parancsok nem ért véget "-> Bezárás", ami jelezte volna a zárt kapcsolat.
Azt is vegyük észre, hogy az interaktív mód lehetővé teszi, hogy ismételje meg a parancsokat.
& Nbsp; >>> connection.test_input ('hello n ")
& Nbsp; Hi világon, örülök, hogy találkoztunk ya!
& Nbsp; >>> connection.test_input (' n')
& Nbsp; Hi világon, örülök, hogy találkoztunk ya!
& Nbsp; >>> connection.test_input ('hello Jim n ")
& Nbsp; Hi Jim, örülök, hogy találkoztunk ya!
& Nbsp; >>> connection.test_input (' n')
& Nbsp; Hi Jim, örülök, hogy találkoztunk ya!
Most fogjuk használni kilép a kapcsolat lezárását.
& Nbsp; >>> connection.test_input ("kilép n")
& Nbsp; Goodbye.
& Nbsp; -> Bezárás
Végül érdemes megjegyezni, hogy a kivételek generál traceback a kapcsolatot.
& Nbsp; >>> kapcsolat = zc.ngi.testing.TextConnection ()
& Nbsp; >>> server = zc.monitor.Server (kapcsolat)
& Nbsp; >>> connection.test_input ('hello Jim 42 n ") # doctest: + ellipszis
& Nbsp; Traceback (legutolsó hívás utolsó):
& Nbsp; ...
& Nbsp; Típushiba: hello () tart maximum 2 érvek (3 megadva)
& Nbsp;
& Nbsp; -> Bezárás
Command hurkok
A "több" módban parancsokat jelezheti, hogy meg akarják állítani a jövőben minden felhasználói. Majd végre egy buta példa bemutatja, hogyan működik.
Itt egy parancsot, amely megvalósítja a számológépet.
& Nbsp; >>> PROMPT = '".
& Nbsp; >>> def Calc (csatlakozás, * args):
& Nbsp; ... ha args és args [0] == 'quit ":
& Nbsp; ... vissza zc.monitor.QUIT_MARKER
& Nbsp; ...
& Nbsp; ... ha paraméterek:
& Nbsp; ... connection.write (str (eval (''. Csatlakozni (args))))
& Nbsp; ... connection.write (' n')
& Nbsp; ...
& Nbsp; ... connection.write (azonnali)
& Nbsp; ... vissza zc.monitor.MORE_MARKER
Ha regisztrálni ezt a parancsot ...
& Nbsp; >>> zc.monitor.register (számított)
... Tudjuk hívni, és kapunk egy parancssort.
& Nbsp; >>> kapcsolat = zc.ngi.testing.TextConnection ()
& Nbsp; >>> server = zc.monitor.Server (kapcsolat)
& Nbsp; >>> connection.test_input ("calc n")
& Nbsp ;.
Ha majd neki több input azt az eredményt kapjuk, plusz egy másik kérdésnél.
& Nbsp; >>> connection.test_input ("2 + 2 n")
& Nbsp; 4
& Nbsp ;.
& Nbsp; >>> connection.test_input ("4 * 2 n")
& Nbsp; 8
& Nbsp ;.
Miután végeztünk tudjuk mondani a számológép menjünk.
& Nbsp; >>> connection.test_input ("kilép n")
& Nbsp; -> Bezárás
Kezdje szerveren
& Nbsp; >>> import ideje
& Nbsp; >>> import zope.testing.loggingsupport, naplózás
& Nbsp; >>> loghandler = zope.testing.loggingsupport.InstalledHandler (
& Nbsp; ... Semmi, level = logging.INFO)
& Nbsp; >>> zc.monitor.start (9644)
& Nbsp; ('', 9644)
& Nbsp; >>> print loghandler
& Nbsp; zc.ngi.async.server INFO
& Nbsp; figyel ('', 9644)
& Nbsp; >>> zc.monitor.last_listener.close ()
& Nbsp; >>> zc.monitor.last_listener = None
& Nbsp; >>> time.sleep (0,1)
& Nbsp; >>> loghandler.clear ()
& Nbsp; >>> zc.monitor.start (("127.0.0.1", 9644))
& Nbsp; ("127.0.0.1", 9644)
& Nbsp; >>> print loghandler
& Nbsp; zc.ngi.async.server INFO
& Nbsp; figyel ("127.0.0.1", 9644)
& Nbsp; >>> zc.monitor.last_listener.close ()
& Nbsp; >>> zc.monitor.last_listener = None
& Nbsp; >>> time.sleep (0,1)
-As port 0:
& Nbsp; >>> addr = zc.monitor.start (0)
& Nbsp; >>> addr == zc.monitor.last_listener.address
& Nbsp; True
& Nbsp; >>> zc.monitor.last_listener.close ()
& Nbsp; >>> zc.monitor.last_listener = None
& Nbsp; >>> time.sleep (0,1)
Próbál újra össze, hogy a port használatban:
& Nbsp; >>> loghandler.clear ()
& Nbsp; >>> zc.monitor.start (("127.0.0.1", 9644))
& Nbsp; ("127.0.0.1", 9644)
& Nbsp; >>> zc.monitor.start (("127.0.0.1", 9644))
& Nbsp; False
& Nbsp; >>> print loghandler
& Nbsp; zc.ngi.async.server INFO
& Nbsp; figyel ("127.0.0.1", 9644)
& Nbsp; zc.ngi.async.server FIGYELEM
& Nbsp; képtelen figyelje ("127.0.0.1", 9644)
& Nbsp; gyökere FIGYELEM
& Nbsp; tudja elindítani zc.monitor szervert, mert a cím ("127.0.0.1", 9644) van használatban.
& Nbsp; >>> zc.monitor.last_listener.close ()
& Nbsp; >>> zc.monitor.last_listener = None
& Nbsp; >>> time.sleep (0,1)
& Nbsp; >>> loghandler.uninstall ()

Mi az új ebben a kiadásban:

  • Ha kötelező a monitort Unix-domain socket, távolítsa el a már meglévő socket ugyanabban az utat, így a bind sikeres. Ez hatással lehet a meglévő használati tekintetében zopectl hibakeresés viselkedést, de sokkal kiszámíthatóbbá válik.

Mi az új verzióban 0.3.0:

  • Added egyszerűsített regisztrációs felületen.

követelmények :

  • Python

Hasonló program

hwm
hwm

20 Feb 15

Sshguard
Sshguard

12 May 15

monner
monner

20 Feb 15

Más szoftver fejlesztő Jim Fulton

zc.zope3recipes
zc.zope3recipes

14 Apr 15

zc.s3uploadqueue
zc.s3uploadqueue

20 Feb 15

zc.resumelb
zc.resumelb

20 Feb 15

Hozzászólások a zc.monitor

Hozzászólás nem található
Megjegyzés hozzáadása
Kapcsolja be a képeket!