0

グラスフィッシュのインスタンスを数えようとしています。len() 関数を使用すると、常に 0 ではなく 1 が返されます。リスト [0] が空のスペースか何かで埋められている可能性があります。これが私たちのコードです。

    ssh = paramiko.SSHClient()
    ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    ssh.connect(self.get('hostname'),int(self.get('port')),self.get('username'),allow_agent=True)
    #try:
    stdin, stdout, stderr = ssh.exec_command('~/glassfish3/glassfish/bin/asadmin list-instances')
    result = stdout.readlines()
    #except Exception, e:
    #   return MonitoringResult(MonitoringResult.OK,'all instances up!')
    result = "".join(result)
    #line = re.compile(r'\bnot\s\D*\n')

    #rline = "".join(line.findall((result)))
    line2=re.compile(r'\bnot')
    rline2 = ";".join(line2.findall((result)))
    print(rline2)
    i = 0
    listr = rline2.split(";")

    while(i < (len(listr)):
        i+=1
    print(i)

    if rline2:
        return MonitoringResult(MonitoringResult.CRITICAL,'instance down')
    else:
        return MonitoringResult(MonitoringResult.OK, 'All instances are up')
4

1 に答える 1