zc.monitor

সফটওয়্যার স্ক্রিনশট:
zc.monitor
সফটওয়্যার বিবরণ:
সংস্করণ: 0.3.1
তারিখ আপলোড: 14 Apr 15
ডেভেলপার: Jim Fulton
লাইসেন্স: বিনামূল্যে
জনপ্রিয়তা: 1

Rating: nan/5 (Total Votes: 0)

. সার্ভার zc.ngi ভিত্তি করে, তাই আমরা এটা প্রদর্শন zc.ngi পরীক্ষার পরিকাঠামো ব্যবহার করতে পারেন;

zc.monitor তথ্য & nbsp বিভিন্ন বিট অনুরোধ করতে একটি কমান্ড লাইন ইন্টারফেস উপলব্ধ করা হয় যে একটি সার্ভার.
& Nbsp; >>> আমদানি zc.ngi.testing
& Nbsp; >>> আমদানি zc.monitor
& Nbsp; >>> সংযোগ = zc.ngi.testing.TextConnection ()
& Nbsp; >>> সার্ভার = zc.monitor.Server (সংযোগ)
সার্ভারের কমান্ড একটি এক্সটেনসিবল সেট সমর্থন করে. Zope.component প্যাকেজ দ্বারা সংজ্ঞায়িত এটা নামে zc.monitor.interfaces.IMonitorPlugin "ইউটিলিটি" হিসাবে কমান্ড আপ দেখায়.
এই দেখুন, আমরা একটি হ্যালো প্লাগ তৈরি করব:
& Nbsp; >>> Def হ্যালো (সংযোগ, নাম = 'বিশ্বের):
& Nbsp; ... "" "হ্যালো বলুন
& Nbsp; ...
& Nbsp; ... আপনি বিশ্বের না হন তাহলে একটি নাম প্রদান করুন.
& Nbsp; ... "" "
& Nbsp; ... connection.write ("হাই% এর, আগে দেখা করতে চমৎকার N"% নাম)
এবং এটি রেজিস্টার:
& Nbsp; >>> zc.monitor.register (হ্যালো)
আমরা একটি কমান্ড রেজিস্টার, আমরা একটি নাম প্রদান করতে পারেন. এই দেখুন, আমরা আবার হ্যালো রেজিস্টার পাবেন:
& Nbsp; >>> zc.monitor.register (হ্যালো, 'হাই')
এখন আমরা সার্ভারে হ্যালো কমান্ড দিতে পারেন:
& Nbsp; >>> connection.test_input (' হাই এন')
& Nbsp; হাই বিশ্ব, আগে দেখা করতে চমৎকার!
& Nbsp; -> বন্ধ
আমরা একটি নাম প্রেরণ করতে পারেন:
& Nbsp; >>> সংযোগ = zc.ngi.testing.TextConnection ()
& Nbsp; >>> সার্ভার = zc.monitor.Server (সংযোগ)
& Nbsp; >>> connection.test_input ('হ্যালো জিম N')
& Nbsp; হাই জিম, আগে দেখা করতে চমৎকার!
& Nbsp; -> বন্ধ
সার্ভার একটি কয়েক মৌলিক কমান্ড দিয়ে আসে. আমরা কি তারা দেখতে পারেন, তাই এর তাদের নিবন্ধন করা যাক. আমরা simplfied নিবন্ধন ইন্টারফেস ব্যবহার করব:
& Nbsp; >>> zc.monitor.register_basics ()
প্রথম সাহায্য কমান্ড. উপলব্ধ কমান্ড একটি তালিকা, ইনপুট ছাড়া সাহায্য দেয় প্রদান:
& Nbsp; >>> সংযোগ = zc.ngi.testing.TextConnection ()
& Nbsp; >>> সার্ভার = zc.monitor.Server (সংযোগ)
& Nbsp; >>> connection.test_input ('সাহায্যের N')
& Nbsp; সমর্থিত কমান্ড:
& Nbsp; হ্যালো - হ্যালো বলুন
& Nbsp; সাহায্য - সার্ভারের কমান্ড সম্পর্কে সাহায্য করুন
হ্যালো বলুন - হাই & nbsp;
& Nbsp; ইন্টারেক্টিভ - মনিটর এর ইন্টারেক্টিভ মোডে চালু করুন
& Nbsp; প্রস্থান - মনিটর প্রস্থান
& Nbsp; -> বন্ধ
আমরা একটি কমান্ডের নাম নির্দিষ্ট করে বিস্তারিত সহায়তা পেতে পারেন:
& Nbsp; >>> সংযোগ = zc.ngi.testing.TextConnection ()
& Nbsp; >>> সার্ভার = zc.monitor.Server (সংযোগ)
& Nbsp; >>> connection.test_input ('সাহায্য সাহায্য N')
& Nbsp; সাহায্যের জন্য সাহায্য:
& Nbsp;
& Nbsp; সার্ভারের কমান্ড সম্পর্কে সাহায্য করুন
& Nbsp;
& Nbsp; ডিফল্টরূপে, কমান্ড এবং সারসংক্ষেপ একটি তালিকা ছাপা হয়. প্রদান
& Nbsp; একটি কমান্ড নামের একটি কমান্ডের জন্য বিস্তারিত ডকুমেন্টেশন পেতে.
& Nbsp;
& Nbsp; -> বন্ধ
& Nbsp; >>> সংযোগ = zc.ngi.testing.TextConnection ()
& Nbsp; >>> সার্ভার = zc.monitor.Server (সংযোগ)
& Nbsp; >>> connection.test_input ('সাহায্যের হ্যালো N')
& Nbsp; হ্যালো জন্য সাহায্য:
& Nbsp;
& Nbsp; হ্যালো বলুন
& Nbsp;
& Nbsp; আপনি বিশ্বের না হন তাহলে একটি নাম প্রদান করুন.
& Nbsp;
& Nbsp; -> বন্ধ
ইন্টারেক্টিভ কমান্ড ইন্টারেক্টিভ মোডে মনিটর পরিবর্তন. উপরে দেখা যায়, মনিটর সাধারণত একটি কমান্ডের সাড়া এবং তারপর সংযোগ বন্ধ হয়ে যায়. প্রস্থান করার জন্য কমান্ড ব্যবহার করা হয় না হওয়া পর্যন্ত "ইন্টারেক্টিভ মোড", সংযোগ বন্ধ করা হয় না. নিদানবিদ্যা জন্য টেলনেট এর মাধ্যমে মনিটর ব্যবহারের সময় এটি ব্যবহার করতে হবে.
& Nbsp; >>> সংযোগ = zc.ngi.testing.TextConnection ()
& Nbsp; >>> সার্ভার = zc.monitor.Server (সংযোগ)
& Nbsp; >>> connection.test_input ('ইন্টারেক্টিভ N')
& Nbsp; ইন্টারেক্টিভ মোড. থেকে প্রস্থান করার জন্য "প্রস্থান করার জন্য" ব্যবহার করুন.
& Nbsp; >>> connection.test_input ('ইন্টারেক্টিভ N সাহায্য')
& Nbsp; ইন্টারেক্টিভ জন্য সাহায্য:
& Nbsp;
& Nbsp; মনিটর এর ইন্টারেক্টিভ মোডে চালু করুন
& Nbsp;
& Nbsp; সাধারণত, মনিটর একটি কমান্ডের পর সংযোগ রিলিজ.
& Nbsp; ইন্টারেক্টিভ মোডে লিখে, মনিটর সংযোগ শেষ হবে না
& Nbsp; আপনি "প্রস্থান করার জন্য" কমান্ড লিখুন পর্যন্ত.
& Nbsp;
& Nbsp; ইন্টারেক্টিভ মোডে, একটি খালি লাইন গত কমান্ড পুনরাবৃত্তি.
& Nbsp;
& Nbsp; >>> connection.test_input (' N প্রস্থান করার জন্য সাহায্য')
& Nbsp; প্রস্থান করার জন্য সাহায্য:
& Nbsp;
& Nbsp; মনিটর প্রস্থান
& Nbsp;
& Nbsp; এই ("ইন্টারেক্টিভ" দেখতে ইন্টারেক্টিভ মোডে শুধুমাত্র সত্যিই দরকারী
& Nbsp; কমান্ড).
& Nbsp;
একটি সংযোগ বন্ধ নির্দেশিত হবে - যা "> বন্ধ", কমান্ড ফলাফল নিয়ে শেষ হয় না যে লক্ষ্য করুন.
এছাড়াও ইন্টারেক্টিভ মোডে আপনি কমান্ড পুনরাবৃত্তি করতে পারবেন যে লক্ষ্য.
& Nbsp; >>> connection.test_input ('হ্যালো N')
& Nbsp; হাই বিশ্ব, আগে দেখা করতে চমৎকার!
& Nbsp; >>> connection.test_input (' N')
& Nbsp; হাই বিশ্ব, আগে দেখা করতে চমৎকার!
& Nbsp; >>> connection.test_input ('হ্যালো জিম N')
& Nbsp; হাই জিম, আগে দেখা করতে চমৎকার!
& Nbsp; >>> connection.test_input (' N')
& Nbsp; হাই জিম, আগে দেখা করতে চমৎকার!
এখন আমরা সংযোগ বন্ধ করতে প্রস্থান করার জন্য ব্যবহার করা হবে.
& Nbsp; >>> connection.test_input (' N প্রস্থান করার জন্য')
& Nbsp; গুডবাই.
& Nbsp; -> বন্ধ
পরিশেষে, এটা ব্যতিক্রম সংযোগ একটি ট্রেস-ব্যাক উৎপন্ন হবে যে এর মূল্য.
& Nbsp; >>> সংযোগ = zc.ngi.testing.TextConnection ()
& Nbsp; >>> সার্ভার = zc.monitor.Server (সংযোগ)
& Nbsp; >>> connection.test_input ('হ্যালো জিম 42 N') # doctest: + + উপবৃত্ত
& Nbsp; ট্রেসব্যাক (সবচেয়ে সাম্প্রতিক কল শেষ):
& Nbsp; ...
& Nbsp; TypeError) (হ্যালো লাগে সবচেয়ে 2 আর্গুমেন্ট (3 দেওয়া) এ
& Nbsp;
& Nbsp; -> বন্ধ
কমান্ড loops,
"আরও" মোড ব্যবহার করে, কমান্ড তারা ভবিষ্যতের সব ব্যবহারকারীর ইনপুট দাবি করতে চান সংকেত হতে পারে. আমরা এটা কিভাবে কাজ করে প্রকট একটি নিরীহ উদাহরণ বাস্তবায়ন করব.
এখানে একটি ক্যালকুলেটর যে কার্যকরী একটি কমান্ড আছে.
& Nbsp; '.' >>> প্রম্পটে =
& Nbsp; >>> Def ক্যালক (সংযোগ, * args):
& Nbsp; ... args এবং args [0] == 'প্রস্থান করার জন্য যদি:
& Nbsp; ... zc.monitor.QUIT_MARKER ফিরে
& Nbsp; ...
& Nbsp; ... args যদি:
& Nbsp; ... connection.write (. Str (Eval ('' যোগ দিতে (args))))
& Nbsp; ... connection.write (' N')
& Nbsp; ...
& Nbsp; ... connection.write (প্রম্পট)
& Nbsp; ... zc.monitor.MORE_MARKER ফিরে
আমরা এই কমান্ড রেজিস্টার যদি ...
& Nbsp; >>> zc.monitor.register (ক্যালক)
... আমরা এটা ডাকা যাবে এবং আমরা একটি প্রম্পট পেতে.
& Nbsp; >>> সংযোগ = zc.ngi.testing.TextConnection ()
& Nbsp; >>> সার্ভার = zc.monitor.Server (সংযোগ)
& Nbsp; >>> connection.test_input ('ক্যালক N')
& Nbsp ;.
আমরা তারপর এটি আরো ইনপুট দিতে যদি আমরা এর ফলে প্লাস অন্য প্রম্পট পেতে.
& Nbsp; >>> connection.test_input ('2 + + 2 n n')
& Nbsp; 4
& Nbsp ;.
& Nbsp; >>> connection.test_input (4 * 2 N ')
& Nbsp; 8
& Nbsp ;.
আমরা একবার হয়ে গেলে আমরা আমাদের যেতে দেওয়া ক্যালকুলেটর বলতে পারেন.
& Nbsp; >>> connection.test_input (' N প্রস্থান করার জন্য')
& Nbsp; -> বন্ধ
সার্ভার আরম্ভ
& Nbsp; >>> আমদানি সময়
& Nbsp; >>> আমদানি zope.testing.loggingsupport, লগিং
& Nbsp; >>> loghandler = zope.testing.loggingsupport.InstalledHandler (
& Nbsp; ... কেউ না, স্তর = logging.INFO)
& Nbsp; >>> zc.monitor.start (9644)
& Nbsp; ('', 9644)
& Nbsp; >>> মুদ্রণ loghandler
& Nbsp; zc.ngi.async.server তথ্য
& Nbsp; শোনা ('', 9644)
& Nbsp; >>> zc.monitor.last_listener.close ()
& Nbsp; >>> zc.monitor.last_listener = কেউ
& Nbsp; >>> time.sleep (0.1)
& Nbsp; >>> loghandler.clear ()
& Nbsp; >>> zc.monitor.start (('127.0.0.1', 9644))
& Nbsp; ('127.0.0.1', 9644)
& Nbsp; >>> মুদ্রণ loghandler
& Nbsp; zc.ngi.async.server তথ্য
& Nbsp; শোনা ('127.0.0.1', 9644)
& Nbsp; >>> zc.monitor.last_listener.close ()
& Nbsp; >>> zc.monitor.last_listener = কেউ
& Nbsp; >>> time.sleep (0.1)
পোর্ট 0 আবদ্ধ:
& Nbsp; >>> ঠি = zc.monitor.start (0)
& Nbsp; >>> ঠি == zc.monitor.last_listener.address
& Nbsp; সত্য
& Nbsp; >>> zc.monitor.last_listener.close ()
& Nbsp; >>> zc.monitor.last_listener = কেউ
& Nbsp; >>> time.sleep (0.1)
ব্যবহার একটি পোর্ট পুনরায় যোগ করতে চেষ্টা করছেন:
& 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; মিথ্যা
& Nbsp; >>> মুদ্রণ loghandler
& Nbsp; zc.ngi.async.server তথ্য
& Nbsp; শোনা ('127.0.0.1', 9644)
& Nbsp; zc.ngi.async.server সতর্কবার্তা
& Nbsp; শুনতে অক্ষম ('127.0.0.1', 9644)
& Nbsp; রুট সতর্কবার্তা
& Nbsp; ঠিকানা ('127.0.0.1', 9644) ব্যবহার করা হয়, কারণ অক্ষম zc.monitor সার্ভার আরম্ভ করার জন্য.
& Nbsp; >>> zc.monitor.last_listener.close ()
& Nbsp; >>> zc.monitor.last_listener = কেউ
& Nbsp; >>> time.sleep (0.1)
& Nbsp; >>> loghandler.uninstall ()

এই রিলিজে নতুন কি

  • মনিটর বাঁধাই যখন বাঁধাই করা সফল হয় তাই ইউনিক্স ডোমেইন সকেট, একই পথ এ একটি বিদ্যমান সকেট মুছে ফেলুন. এই ডিবাগ আচরণ zopectl সম্মান সঙ্গে বিদ্যমান ব্যবহার প্রভাবিত হতে পারে, কিন্তু আরো আন্দাজের হবে.

সংস্করণ 0.3.0 নতুন কি

  • সরলীকৃত নিবন্ধন ইন্টারফেস যোগ করা হয়েছে
  • .

আবশ্যক

  • পাইথন

অনুরূপ সফ্টওয়্যার

বিকাশকারী অন্যান্য সফ্টওয়্যার Jim Fulton

zc.zope3recipes
zc.zope3recipes

14 Apr 15

zc.resumelb
zc.resumelb

20 Feb 15

zc.s3uploadqueue
zc.s3uploadqueue

20 Feb 15

মন্তব্য zc.monitor

পাওয়া মন্তব্যসমূহ না
মন্তব্য যোগ করুন
ছবি চালু!