2015-09-24 6 views
0

Я пытаюсь выяснить, могу ли я управлять своей установленной программой, проверяя, работает ли она или нет. Поэтому прямо сейчас я использую этот сценарий в качестве основы для мониторинга моего локального приложения.Мониторинг процесса приложения для каждого клиента

import os 
import sys 
import subprocess 
import time 

while True: 
     time.sleep(1) 
     if 'Python_Script.exe' not in subprocess.Popen('tasklist', stdout=subprocess.PIPE).communicate()[0]:     
       print 'Application was closed' 

Примечание: это мое местное приложение, и моя цель - проверить статус для каждого клиента, например. (192.168.21.2, 192.168.21.3, 192.168.21.4, 192.168.21.5),

+0

Итак, в чем ваш вопрос? не работает ли этот код? –

+0

Этот код работает, и мой вопрос в том, что он был только локальным (Мой компьютер), и моя цель - сделать это через сеть. Так же, как простая прошивка через сеть, но на этот раз мне нужно проверить, работает ли мое приложение для каждого клиента. –

+0

Сначала вы должны запустить эту программу на других компьютерах. Затем, если вы хотите отправить вывод на свой компьютер, вы должны использовать [socket] (https://docs.python.org/2/library/socket.html). –

ответ

0

Во-первых, вы должны написать программу, которая может отправлять выходные данные на ваш компьютер.

Я рекомендую socket. Вот простая программа, которая может отправить текст на сервер:

from socket import * 

def server(): 
    try: 
     s = socket(AF_INET, SOCK_DGRAM) 
     port = int(input('Enter the port: ')) 

     s.bind(('', port)) 

     while True: 
      print('\nWaiting for a massage...') 
      msg = s.recvfrom(1024) 
      print(msg) 

    except KeyboardInterrupt: 
     f.close 
     print('\n\nServer exit.') 


def client(): 
    s = socket(AF_INET, SOCK_DGRAM) 

    host = str(input('\nEnter the server\'s IP: ')) 
    port = int(input('Enter the port: ')) 

    s.sendto("Here is the text that you'd like send to the server")\ 
    .encode('UTF-8'), (host, port)) 

    print('\nThe massage has been send.') 
  1. Это программа Python 3. Возможно, вы должны преобразовать его в Python 2.
  2. Вы можете написать свою программу как функцию, а return 'Application was closed' затем отправить ее.

Однако это всего лишь пример, вам нужно написать полную программу самостоятельно. Удачи :)

Смежные вопросы