zc.monitor

Software screenshot:
zc.monitor
Software ətraflı:
Version: 0.3.1
Tarixi Upload: 14 Apr 15
Geliştirici: Jim Fulton
Lisenziya: Pulsuz
Məşhurluq: 1

Rating: nan/5 (Total Votes: 0)

. Server zc.ngi əsaslanır, belə ki, biz onu nümayiş etdirmək üçün zc.ngi test infrastrukturu istifadə edə bilərsiniz

zc.monitor informasiya & nbsp müxtəlif bit tələb etmək bir skript satırı interface təmin edən server edir.
& Nbsp; >>> idxal zc.ngi.testing
& Nbsp; >>> idxal zc.monitor
& Nbsp; >>> əlaqə = zc.ngi.testing.TextConnection ()
& Nbsp; >>> server = zc.monitor.Server (connection)
server əmrləri bir genişlənən dəstəkləyir. Zope.component paketi ilə müəyyən kimi adlı zc.monitor.interfaces.IMonitorPlugin "kommunal" kimi əmrləri görünür.
Bu görmək üçün, biz salam plugin yaratmaq lazımdır:
& Nbsp; >>> def salam (əlaqə, name = 'Dünya'):
& Nbsp; ... "" "salam de
& Nbsp; ...
& Nbsp; ... dünya değilseniz bir ad təmin edir.
& Nbsp; ... "" "
& Nbsp; ... connection.write ("Hi% s, ya cavab gözəl n"% adı)
və qeydiyyatdan:
& Nbsp; >>> zc.monitor.register (salam)
Biz bir komanda qeydiyyatdan zaman, biz bir ad təmin edə bilər. Bu görmək üçün, biz yenə salam qeydiyyatdan lazımdır:
& Nbsp; >>> zc.monitor.register (hello, "hi)
İndi server salam əmr verə bilər:
& Nbsp; >>> connection.test_input (' hi n)
& Nbsp; Hi dünya ya cavab gözəl!
& Nbsp; -> yaxın
Biz bir ad keçə bilər:
& Nbsp; >>> əlaqə = zc.ngi.testing.TextConnection ()
& Nbsp; >>> server = zc.monitor.Server (connection)
& Nbsp; >>> connection.test_input (salam Jim n ")
& Nbsp; Hi Jim, ya cavab gözəl!
& Nbsp; -> yaxın
server bir neçə əsas əmrləri ilə gəlir. Biz onların nə edə bilərsiniz, belə ki, onları qeydiyyatdan edək. Biz simplfied qeydiyyat interface istifadə edəcəyik:
& Nbsp; >>> zc.monitor.register_basics ()
ilk yardım əmr edir. Mövcud əmrləri siyahısı daxil olmadan yardım verir verilməsi:
& Nbsp; >>> əlaqə = zc.ngi.testing.TextConnection ()
& Nbsp; >>> server = zc.monitor.Server (connection)
& Nbsp; >>> connection.test_input (help n ")
& Nbsp; Desteklenen əmrləri:
& Nbsp; salam - salam de
& Nbsp; help - server əmrləri haqqında yardım alın
Salam de - hi; & nbsp
& Nbsp; interaktiv - monitor interaktiv rejimi yandırın
& Nbsp; çıxmaq - monitor çıxın
& Nbsp; -> yaxın
Biz bir komanda adı ifadə ətraflı yardım əldə edə bilərsiniz:
& Nbsp; >>> əlaqə = zc.ngi.testing.TextConnection ()
& Nbsp; >>> server = zc.monitor.Server (connection)
& Nbsp; >>> connection.test_input (help help n ")
& Nbsp; yardım üçün Yardım:
& Nbsp;
& Nbsp; server əmrləri haqqında yardım alın
& Nbsp;
& Nbsp; Mənim cari olaraq, əmrləri və xülasəsi siyahısı çap olunur. Təmin etmək
& Nbsp; bir komanda adı komanda üçün ətraflı sənədləri almaq üçün.
& Nbsp;
& Nbsp; -> yaxın
& Nbsp; >>> əlaqə = zc.ngi.testing.TextConnection ()
& Nbsp; >>> server = zc.monitor.Server (connection)
& Nbsp; >>> connection.test_input (yardım salam n ")
& Nbsp; salam Kömək:
& Nbsp;
& Nbsp; salam söyləyin
& Nbsp;
& Nbsp; dünya değilseniz bir ad təmin edir.
& Nbsp;
& Nbsp; -> yaxın
interaktiv komanda interaktiv rejimdə daxil monitor keçir. Yuxarıda göründüyü kimi, monitor adətən bir komanda cavab və sonra keçid bağlanır. Çıxmaq komanda istifadə qədər "interaktiv rejimi" olaraq, əlaqə bağlı deyil. Diaqnostikası üçün telnet vasitəsilə monitor daxil zaman faydalı ola bilər.
& Nbsp; >>> əlaqə = zc.ngi.testing.TextConnection ()
& Nbsp; >>> server = zc.monitor.Server (connection)
& Nbsp; >>> connection.test_input (interaktiv n ")
& Nbsp; üzrə Interactive rejimi. Çıxmaq üçün "çıxmaq" istifadə edin.
& Nbsp; >>> connection.test_input (interaktiv n kömək)
& Nbsp; interaktiv Kömək:
& Nbsp;
& Nbsp; monitor interaktiv rejimi yandırın
& Nbsp;
& Nbsp; Adətən, monitor bir komanda sonra keçid relizlər.
& Nbsp; interaktiv rejimi girerek, monitor bağlantısı bitməyəcək
& Nbsp; siz "çıxmaq" əmrini daxil qədər.
& Nbsp;
& Nbsp; interaktiv rejimi, boş line son komanda təkrar edir.
& Nbsp;
& Nbsp; >>> connection.test_input (' n çıxmaq yardım)
& Nbsp; çıxmaq üçün yardım:
& Nbsp;
& Nbsp; monitor çıxın
& Nbsp;
& Nbsp; Bu ("interaktiv" görmək interaktiv rejimdə yalnız həqiqətən faydalı
& Nbsp; komanda).
& Nbsp;
Qapalı bağlantısı qeyd olardı - "> bağlayın" əmrləri nəticə ilə başa deyil ki, görürsünüz.
Həmçinin interaktiv rejimi əmrləri təkrar imkan verir ki, görürsünüz.
& Nbsp; >>> connection.test_input (salam n ")
& Nbsp; Hi dünya ya cavab gözəl!
& Nbsp; >>> connection.test_input (' n ")
& Nbsp; Hi dünya ya cavab gözəl!
& Nbsp; >>> connection.test_input (salam Jim n ")
& Nbsp; Hi Jim, ya cavab gözəl!
& Nbsp; >>> connection.test_input (' n ")
& Nbsp; Hi Jim, ya cavab gözəl!
İndi əlaqə bağlamaq üçün çıxmaq istifadə edəcək.
& Nbsp; >>> connection.test_input (' n çıxmaq)
& Nbsp; Goodbye.
& Nbsp; -> yaxın
Nəhayət, istisna əlaqədar bir traceback yaratmaq ki, qeyd dəyər.
& Nbsp; >>> əlaqə = zc.ngi.testing.TextConnection ()
& Nbsp; >>> server = zc.monitor.Server (connection)
& Nbsp; >>> connection.test_input (salam Jim 42 n ") # doctest: + Ellips
& Nbsp; Traceback (ən son zəng, son):
& Nbsp; ...
& Nbsp; TypeError:) (salam alan ən 2 dəlilləri (3 verilir) at
& Nbsp;
& Nbsp; -> yaxın
Command loops
"Daha çox" rejimi istifadə edərək, əmrləri onlar bütün gələcək istifadəçi girişi iddia etmək istəyirəm ki, siqnal bilərsiniz. Biz bu işləri necə nümayiş etdirmək üçün bir silly nümunə həyata lazımdır.
Burada bir kalkulyator həyata keçirir bir komanda var.
& Nbsp; '.' >>> Istəmə =
& Nbsp; >>> def calc (qoşulma * args):
& Nbsp; ... args və args [0] == 'istefa et' əgər:
& Nbsp; ... zc.monitor.QUIT_MARKER qayıtmaq
& Nbsp; ...
& Nbsp; ... args əgər:
& Nbsp; ... connection.write (. Küç (eval ('' qoşulmaq (args))))
& Nbsp; ... connection.write (' n ")
& Nbsp; ...
& Nbsp; ... connection.write (Təlqin)
& Nbsp; ... zc.monitor.MORE_MARKER qayıtmaq
Biz bu komanda qeydiyyatdan varsa ...
& Nbsp; >>> zc.monitor.register (calc)
... Biz ibadət edə bilər və biz tez almaq.
& Nbsp; >>> əlaqə = zc.ngi.testing.TextConnection ()
& Nbsp; >>> server = zc.monitor.Server (connection)
& Nbsp; >>> connection.test_input (calc n ")
& Nbsp ;.
Biz sonra daha çox giriş vermək, biz nəticə plus digər tez almaq.
& Nbsp; >>> connection.test_input (2 + 2 n ")
& Nbsp; 4
& Nbsp ;.
& Nbsp; >>> connection.test_input (4 * 2 n ")
& Nbsp; 8
& Nbsp ;.
Biz Bitirdiğinizde sonra biz buraxmaq üçün kalkulyator deyə bilərsiniz.
& Nbsp; >>> connection.test_input (' n çıxmaq)
& Nbsp; -> yaxın
Server başlamaq
& Nbsp; >>> idxal vaxt
& Nbsp; >>> idxal zope.testing.loggingsupport, giriş
& Nbsp; >>> loghandler = zope.testing.loggingsupport.InstalledHandler (
& Nbsp; ... Yox, səviyyəsi = logging.INFO)
& Nbsp; >>> zc.monitor.start (9644)
& Nbsp; ('' 9644)
& Nbsp; >>> çap loghandler
& Nbsp; zc.ngi.async.server INFO
& Nbsp; dinləmək ('' 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; >>> çap loghandler
& Nbsp; zc.ngi.async.server INFO
& Nbsp; dinləmək (127.0.0.1, 9644)
& Nbsp; >>> zc.monitor.last_listener.close ()
& Nbsp; >>> zc.monitor.last_listener = None
& Nbsp; >>> time.sleep (0.1)
Port 0 bağladığı:
& 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)
Istifadə bir limanına rebind üçün çalışırıq:
& 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; >>> çap loghandler
& Nbsp; zc.ngi.async.server INFO
& Nbsp; dinləmək (127.0.0.1, 9644)
& Nbsp; zc.ngi.async.server XƏBƏRDARLIQ
& Nbsp; qulaq asmaq iqtidarında (127.0.0.1, 9644)
& Nbsp; kök XƏBƏRDARLIQ
& Nbsp; ünvanı (127.0.0.1 ", 9644) istifadə çünki bilməyən zc.monitor server başlamaq üçün.
& Nbsp; >>> zc.monitor.last_listener.close ()
& Nbsp; >>> zc.monitor.last_listener = None
& Nbsp; >>> time.sleep (0.1)
& Nbsp; >>> loghandler.uninstall ()

Bu azad yeni nədir:

  • a monitor məcburi zaman bind uğurlu, belə ki, Unix-domain yuva, eyni yolda mövcud yuva çıxarın. Bu debug davranış zopectl ilə bağlı mövcud istifadə təsir edə bilər, ancaq daha əvvəlcədən olacaq.

versiya 0.3.0 yeni nədir:

  • sadələşdirilmiş qeydiyyat interface Əlavə
  • .

tələblər

  • Python

Oxşar proqram

Ortro
Ortro

14 Apr 15

qmail-smtpd-auth
qmail-smtpd-auth

3 Jun 15

Geliştirici digər proqram Jim Fulton

zc.s3uploadqueue
zc.s3uploadqueue

20 Feb 15

zc.zope3recipes
zc.zope3recipes

14 Apr 15

zc.resumelb
zc.resumelb

20 Feb 15

Şərh zc.monitor

Şərhlər tapılmadı
Şərh əlavə
Images yandırın!