コード例 #1
0
    def recover(self):
        wan.sendcontrol('c')
        wan.expect(prompt)
        wan.sendline('killall -9 socat pv')
        wan.expect_exact('killall -9 socat pv')
        wan.expect(prompt)

        for d in [wan, lan]:
            d.sendcontrol('c')
            d.expect(prompt)
            d.sendline('pgrep -f d1:ad2:id20')
            d.expect_exact('pgrep -f d1:ad2:id20')
            d.expect(prompt)
            d.sendline('pkill -9 -f d1:ad2:id20')
            d.expect_exact('pkill -9 -f d1:ad2:id20')
            d.expect(prompt)
            d.sendline('killall -9 socat')
            d.expect_exact('killall -9 socat')
            d.expect(prompt)

        for ip, port in self.all_ips:
            self.cleanup_ip(ip)

        # this needs to be here because we need to make sure mpstat is cleaned up
        board.parse_stats(dict_to_log=self.logged)
        print("mpstat cpu usage = %s" % self.logged['mpstat'])
        self.result_message = "BitTorrent test with %s connections, cpu usage = %s" % (
            self.conns, self.logged['mpstat'])
コード例 #2
0
    def recover(self):
        board.touch()
        lan.sendcontrol('c')
        lan.expect(prompt)
        board.touch()

        print("Copying files from lan to dir = %s" % self.config.output_dir)
        lan.sendline('readlink -f $HOME/%s/' % self.dir)
        lan.expect_exact('$HOME/%s/' % self.dir)
        board.touch()
        lan.expect(prompt)
        board.touch()
        fname = lan.before.replace('\n', '').replace('\r', '')
        board.touch()
        rm_r(os.path.join(self.config.output_dir, self.dir))
        scp_from(fname, lan.ipaddr, lan.username, lan.password, lan.port,
                 self.config.output_dir)

        # let board settle down
        board.expect(pexpect.TIMEOUT, timeout=30)
        board.touch()

        board.parse_stats(dict_to_log=self.logged)
        board.touch()
        self.result_message = 'JMeter: DONE, name = %s cpu usage = %s' % (
            self.shortname, self.logged['mpstat'])
コード例 #3
0
    def recover(self):
        for d in [wan, lan]:
            d.sendcontrol('z')
            if 0 == d.expect([pexpect.TIMEOUT] + prompt):
                d.sendcontrol('c')
                d.sendcontrol('c')
                d.sendcontrol('c')
                d.sendcontrol('c')
                d.sendcontrol('c')
                d.sendline('')
                d.sendline('echo FOOBAR')
                d.expect_exact('echo FOOBAR')
                d.expect_exact('FOOBAR')
                d.expect(prompt)
            else:
                d.sendline("kill %1")
                d.expect(prompt)

            d.sendline('pkill -9 -f iperf')
            d.expect_exact('pkill -9 -f iperf')
            d.expect(prompt)

        board.parse_stats(dict_to_log=self.logged)

        self.result_message += ", cpu usage = %.2f" % self.logged['mpstat']
コード例 #4
0
 def recover(self):
     lan.sendcontrol('c')
     time.sleep(5)  # Give router a few seconds to recover
     board.parse_stats(dict_to_log=self.logged)
     avg_cpu = self.logged['mpstat']
     msg = "ApacheBench measured %s connections/second, CPU use = %s%%." % (
         self.reqs_per_sec, avg_cpu)
     self.result_message = msg
コード例 #5
0
    def recovery(self):
        for d in [wan, self.client]:
            d.sendcontrol('c')
            d.sendcontrol('c')
            d.expect(prompt)

        board.parse_stats(dict_to_log=self.logged)

        args = (self.logged['s_rate'], self.logged['r_rate'], self.logged['mpstat'])
        self.result_message = "Sender rate = %s MBits/sec, Receiver rate = %s Mbits/sec, cpu = %.2f\n" % args
コード例 #6
0
    def recover(self):
        lan.sendcontrol('c')
        lan.expect(prompt)
        lan.sendline('pkill -9 -f hping3')
        lan.expect_exact('pkill -9 -f hping3')
        lan.expect(prompt)

        wan.sendcontrol('c')
        wan.expect(prompt)
        wan.sendline('pkill -9 -f nc ')
        wan.expect_exact('pkill -9 -f nc')
        wan.expect(prompt)

        board.parse_stats(dict_to_log=self.logged)

        args = (self.conn_rate, self.max_conns, self.logged['mpstat'])
        self.result_message = "hping3 udp firewall test, conn_rate = %s, max_conns = %s, cpu usage = %.2f" % args