Changeset 785


Ignore:
Timestamp:
04/04/13 16:05:42 (9 years ago)
Author:
ramonb
Message:
  • cleanup
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/0.4/jobmond/jobmond.py

    r784 r785  
    15171517        """Setup appropriate variables"""
    15181518
    1519         self.jobs    = { }
    1520         self.timeoffset    = 0
    1521         self.dp        = DataProcessor()
     1519        self.jobs       = { }
     1520        self.timeoffset = 0
     1521        self.dp         = DataProcessor()
    15221522
    15231523        self.initPbsQuery()
     
    15251525    def initPbsQuery( self ):
    15261526
    1527         self.pq        = None
     1527        self.pq = None
    15281528
    15291529        if( BATCH_SERVER ):
    15301530
    1531             self.pq        = PBSQuery( BATCH_SERVER )
     1531            self.pq = PBSQuery( BATCH_SERVER )
    15321532        else:
    1533             self.pq        = PBSQuery()
     1533            self.pq = PBSQuery()
    15341534
    15351535        try:
     
    15461546        """Gather all data on current jobs in Torque"""
    15471547
    1548         joblist        = {}
    1549         self.cur_time    = 0
     1548        joblist            = {}
     1549        self.cur_time      = 0
    15501550
    15511551        try:
    15521552            joblist        = self.pq.getjobs()
    1553             self.cur_time    = time.time()
     1553            self.cur_time  = time.time()
    15541554
    15551555        except PBSError, detail:
     
    15611561
    15621562        for name, attrs in joblist.items():
    1563             display_queue        = 1
    1564             job_id            = name.split( '.' )[0]
    1565 
    1566             name            = self.getAttr( attrs, 'Job_Name' )
    1567             queue            = self.getAttr( attrs, 'queue' )
     1563            display_queue = 1
     1564            job_id        = name.split( '.' )[0]
     1565
     1566            name          = self.getAttr( attrs, 'Job_Name' )
     1567            queue         = self.getAttr( attrs, 'queue' )
    15681568
    15691569            if QUEUE:
     
    15801580
    15811581            owner            = self.getAttr( attrs, 'Job_Owner' ).split( '@' )[0]
    1582             requested_time        = self.getAttr( attrs, 'Resource_List.walltime' )
    1583             requested_memory    = self.getAttr( attrs, 'Resource_List.mem' )
    1584 
    1585             mynoderequest        = self.getAttr( attrs, 'Resource_List.nodes' )
    1586 
    1587             ppn            = ''
     1582            requested_time   = self.getAttr( attrs, 'Resource_List.walltime' )
     1583            requested_memory = self.getAttr( attrs, 'Resource_List.mem' )
     1584
     1585            mynoderequest    = self.getAttr( attrs, 'Resource_List.nodes' )
     1586
     1587            ppn = ''
    15881588
    15891589            if mynoderequest.find( ':' ) != -1 and mynoderequest.find( 'ppn' ) != -1:
    15901590
    1591                 mynoderequest_fields    = mynoderequest.split( ':' )
     1591                mynoderequest_fields = mynoderequest.split( ':' )
    15921592
    15931593                for mynoderequest_field in mynoderequest_fields:
     
    15951595                    if mynoderequest_field.find( 'ppn' ) != -1:
    15961596
    1597                         ppn    = mynoderequest_field.split( 'ppn=' )[1]
    1598 
    1599             status            = self.getAttr( attrs, 'job_state' )
     1597                        ppn = mynoderequest_field.split( 'ppn=' )[1]
     1598
     1599            status = self.getAttr( attrs, 'job_state' )
    16001600
    16011601            if status in [ 'Q', 'R' ]:
     
    16031603                jobs_processed.append( job_id )
    16041604
    1605             queued_timestamp    = self.getAttr( attrs, 'ctime' )
     1605            queued_timestamp = self.getAttr( attrs, 'ctime' )
    16061606
    16071607            if status == 'R':
    16081608
    1609                 start_timestamp        = self.getAttr( attrs, 'mtime' )
    1610                 nodes            = self.getAttr( attrs, 'exec_host' ).split( '+' )
    1611 
    1612                 nodeslist        = do_nodelist( nodes )
     1609                start_timestamp = self.getAttr( attrs, 'mtime' )
     1610                nodes           = self.getAttr( attrs, 'exec_host' ).split( '+' )
     1611
     1612                nodeslist       = do_nodelist( nodes )
    16131613
    16141614                if DETECT_TIME_DIFFS:
     
    16201620                    if int( start_timestamp ) > int( int( self.cur_time ) + int( self.timeoffset ) ):
    16211621
    1622                         self.timeoffset    = int( int(start_timestamp) - int(self.cur_time) )
     1622                        self.timeoffset = int( int(start_timestamp) - int(self.cur_time) )
    16231623
    16241624            elif status == 'Q':
     
    16361636                #
    16371637
    1638                 start_timestamp        = ''
    1639                 count_mynodes        = 0
     1638                start_timestamp = ''
     1639                count_mynodes   = 0
    16401640
    16411641                for node in mynoderequest.split( '+' ):
     
    16431643                    # Just grab the {node_count|hostname} part and ignore properties
    16441644                    #
    1645                     nodepart    = node.split( ':' )[0]
     1645                    nodepart     = node.split( ':' )[0]
    16461646
    16471647                    # Let's assume a node_count value
    16481648                    #
    1649                     numeric_node    = 1
     1649                    numeric_node = 1
    16501650
    16511651                    # Chop the value up into characters
     
    16571657                        if letter not in string.digits:
    16581658
    1659                             numeric_node    = 0
     1659                            numeric_node = 0
    16601660
    16611661                    # If this is a hostname, just count this as one (1) node
     
    16631663                    if not numeric_node:
    16641664
    1665                         count_mynodes    = count_mynodes + 1
     1665                        count_mynodes = count_mynodes + 1
    16661666                    else:
    16671667
     
    16701670                        #
    16711671                        try:
    1672                             count_mynodes    = count_mynodes + int( nodepart )
     1672                            count_mynodes = count_mynodes + int( nodepart )
    16731673
    16741674                        except ValueError, detail:
     
    16831683                            debug_msg( 10, 'attrs = ' + str( attrs ) )
    16841684                       
    1685                 nodeslist    = str( count_mynodes )
     1685                nodeslist       = str( count_mynodes )
    16861686            else:
    1687                 start_timestamp    = ''
    1688                 nodeslist    = ''
     1687                start_timestamp = ''
     1688                nodeslist       = ''
    16891689
    16901690            myAttrs                = { }
    16911691
    1692             myAttrs[ 'name' ]        = str( name )
    1693             myAttrs[ 'queue' ]        = str( queue )
    1694             myAttrs[ 'owner' ]        = str( owner )
    1695             myAttrs[ 'requested_time' ]    = str( requested_time )
    1696             myAttrs[ 'requested_memory' ]    = str( requested_memory )
    1697             myAttrs[ 'ppn' ]        = str( ppn )
    1698             myAttrs[ 'status' ]        = str( status )
    1699             myAttrs[ 'start_timestamp' ]    = str( start_timestamp )
    1700             myAttrs[ 'queued_timestamp' ]    = str( queued_timestamp )
    1701             myAttrs[ 'reported' ]        = str( int( int( self.cur_time ) + int( self.timeoffset ) ) )
    1702             myAttrs[ 'nodes' ]        = nodeslist
    1703             myAttrs[ 'domain' ]        = fqdn_parts( socket.getfqdn() )[1]
     1692            myAttrs[ 'name' ]             = str( name )
     1693            myAttrs[ 'queue' ]            = str( queue )
     1694            myAttrs[ 'owner' ]            = str( owner )
     1695            myAttrs[ 'requested_time' ]   = str( requested_time )
     1696            myAttrs[ 'requested_memory' ] = str( requested_memory )
     1697            myAttrs[ 'ppn' ]              = str( ppn )
     1698            myAttrs[ 'status' ]           = str( status )
     1699            myAttrs[ 'start_timestamp' ]  = str( start_timestamp )
     1700            myAttrs[ 'queued_timestamp' ] = str( queued_timestamp )
     1701            myAttrs[ 'reported' ]         = str( int( int( self.cur_time ) + int( self.timeoffset ) ) )
     1702            myAttrs[ 'nodes' ]            = nodeslist
     1703            myAttrs[ 'domain' ]           = fqdn_parts( socket.getfqdn() )[1]
    17041704            myAttrs[ 'poll_interval' ]    = str( BATCH_POLL_INTERVAL )
    17051705
    17061706            if self.jobDataChanged( self.jobs, job_id, myAttrs ) and myAttrs['status'] in [ 'R', 'Q' ]:
    17071707
    1708                 self.jobs[ job_id ]    = myAttrs
     1708                self.jobs[ job_id ] = myAttrs
    17091709
    17101710        for id, attrs in self.jobs.items():
Note: See TracChangeset for help on using the changeset viewer.