コード例 #1
0
def main():
    django.setup()

    # Load device info and credentials into database
    ex1_link_obj_2_credentials.link_device_to_credentials()
    devices = NetworkDevice.objects.all()

    for a_device in devices:
      if a_device.device_name and a_device.credentials:
        start_time = datetime.now()
        creds = a_device.credentials
        username = creds.username
        password = creds.password
        remote_conn = ConnectHandler(device_type=a_device.device_type,
                                     ip=a_device.ip_address,
                                     username=username,
                                     password=password,       
                                     port=a_device.port,
                                     secret='')

        # Print out 'show version' output
        print
        print '#' * 80
        print ("'show version' output for device: %s" % a_device.device_name)
        print '#' * 80
        print remote_conn.send_command("show version")

        # Print out elapsed time
        print '#' * 80
        print ("Elapsed time: "  + str(datetime.now() - start_time)) 
        print '#' * 80
コード例 #2
0
def main():
    django.setup()
    start_time = datetime.now()
    q = Queue(maxsize=20)

    # Load device info and credentials into database
    ex1_link_obj_2_credentials.link_device_to_credentials()
    devices = NetworkDevice.objects.all()

    procs = []
    for a_device in devices:
        print a_device, a_device.credentials

    for a_device in devices:
        my_proc = Process(target=show_version_queue, args=(a_device, q))
        my_proc.start()
        procs.append(my_proc)

    # Make sure all child processes finish running and return before proceeding
    for a_proc in procs:
        a_proc.join()     # Wait for a process to complete

    while not q.empty():
        my_dict = q.get()
        for k,v in my_dict.iteritems():
            print k
            print v

    print "\nElapsed time: " + str(datetime.now() - start_time)
コード例 #3
0
def main():
    django.setup()
    start_time = datetime.now()

    # Load device info and credentials into database
    ex1_link_obj_2_credentials.link_device_to_credentials()
    devices = NetworkDevice.objects.all()

    procs = []
    for a_device in devices:
        print a_device, a_device.credentials

    for a_device in devices:
        my_proc = Process(target=show_version, args=(a_device,))
        my_proc.start()
        procs.append(my_proc)

    # Make sure all child processes finish running and return before proceeding
    for a_proc in procs:
        a_proc.join()     # Wait for a process to complete

    print "\nElapsed time: " + str(datetime.now() - start_time)
コード例 #4
0
def main():
    django.setup()

    # Load device info and credentials into database
    ex1_link_obj_2_credentials.link_device_to_credentials()
    devices = NetworkDevice.objects.all()

    start_time = datetime.now()
    print "Print out device info: "
    for a_device in devices:
        print a_device, a_device.credentials

    for a_device in devices:
        my_thread = threading.Thread(target=show_version, args=(a_device,))
        my_thread.start()

    main_thread = threading.currentThread()
    for a_thread in threading.enumerate():
        if a_thread != main_thread:
            print a_thread
            a_thread.join()     # Wait for a thread to complete

    print "\nElapsed time: " + str(datetime.now() - start_time)