Changeset 7300 for TI01-discovery-Ingest


Ignore:
Timestamp:
06/08/10 16:41:31 (9 years ago)
Author:
sdonegan
Message:

various updates to ingest (note change of name of main class) - can be called from dpws api now with just process id, or indivudual or run_all_ingest

Location:
TI01-discovery-Ingest/trunk/v4.3.0/ingestAutomation-upgrade/OAIBatch
Files:
1 added
2 edited

Legend:

Unmodified
Added
Removed
  • TI01-discovery-Ingest/trunk/v4.3.0/ingestAutomation-upgrade/OAIBatch/abstractdocumentingester.py

    r7286 r7300  
    5353                        self.usage() 
    5454                     
    55                 loggingLevel = logging.WARNING 
     55                loggingLevel = logging.ERROR 
    5656                for o, a in opts: 
    5757                    if o == "-v": 
     
    9898                         
    9999                if checkConfInArgs is False: 
    100                         print "\nWARNING: You must now include the ingestConfigFile arguement for successful operation" 
    101                         sys.exit(2) 
    102                  
     100                        print "\nWARNING: Ingest config file has not been specified. Using local default" 
     101                        self.setOaiConfigFile('./oai_document_ingester.config') 
     102                         
    103103                 
    104104                 
     
    494494                logging.info("Renaming files:") 
    495495                 
    496                 if self.ingestProcessID is not None: 
     496                if self.ingestProcessID is not None and self.procID is None: 
     497                         
    497498                        self._getPostgresDBConnectionLogging() 
    498                  
     499                                                 
    499500                        #if process id has been supplied, then update the logging db with a "start_ingest" 
    500501                        sqlStatusCmd = "select update_ingest_status (%s, 'run_ingest');" %self.ingestProcessID 
     
    800801                                #record all problem messages 
    801802                                #ingestProbMsg = ingestProbMsg + self.ingestProblemMessage + "\n" 
     803                                 
    802804                                if self.ingestProblemMessage != '': 
    803805                                        ingestProbMsg = ingestProbMsg + self.ingestProblemMessage 
     
    860862                                                 
    861863                #log processing results to ingestLogging table if required to            
     864                 
    862865                if self.ingestProcessID is not None: 
    863866                        logging.info("Updating ingest logging database") 
     
    872875                                logging.info("There are %s problem files - recording these in stats logging db" %self._no_problem_files) 
    873876                                 
    874                                 for badFile in self.problemMessageList.keys(): 
    875                                          
    876                                         sqlProbFileCmd = "select add_problem_file('%s','%s','%s');"%(self.ingestProcessID,badFile,self.problemMessageList[badFile]) 
     877                                #note sometimes message will not always be recorded, so just record name of file 
     878                                if len(self.problemMessageList.keys()) < 1: 
     879                                         
     880                                        for badFile in self.updateFailList: 
     881                                                sqlProbFileCmd = "select add_problem_file('%s','%s','%s');"%(self.ingestProcessID,badFile,'Could not catch precise error for this file!!') 
     882                                 
     883                                else: 
     884                                        for badFile in self.problemMessageList.keys():                                   
     885                                                sqlProbFileCmd = "select add_problem_file('%s','%s','%s');"%(self.ingestProcessID,badFile,self.problemMessageList[badFile]) 
    877886                                                                         
    878                                         #update ingestLogging                    
    879                                         self.pgc_IngestLog.runSQLCommand(sqlProbFileCmd) 
    880                                          
    881                         #if process id has been supplied, then update the logging db with a "start_ingest" 
    882                         sqlStatusCmd = "select update_ingest_status (%s, 'end_ingest');" %self.ingestProcessID 
    883                         self.pgc_IngestLog.runSQLCommand(sqlStatusCmd) 
     887                                #update ingestLogging                    
     888                                self.pgc_IngestLog.runSQLCommand(sqlProbFileCmd) 
     889                                         
     890                        #if process id has been supplied, then update the logging db with a "start_ingest" (only for DPWS ops) 
     891                        if self.procID is None: 
     892                                sqlStatusCmd = "select update_ingest_status (%s, 'end_ingest');" %self.ingestProcessID 
     893                                self.pgc_IngestLog.runSQLCommand(sqlStatusCmd) 
    884894                         
    885895                #update with content from the problem messages recorded 
  • TI01-discovery-Ingest/trunk/v4.3.0/ingestAutomation-upgrade/OAIBatch/run_all_ingest.py

    r7186 r7300  
    22"""  
    33""" 
    4 import os, sys, logging,time,string 
     4import os, sys, logging,time,string,random 
    55 
    66lineSeparator = "-----------------------------" 
     
    1414logging.info(lineSeparator) 
    1515 
    16 from oai_document_ingester import oai_document_ingester 
     16from Metadata_document_ingester import Metadata_document_ingester 
    1717 
    1818#pick up path info from processing config file 
    19 configFilePath = '/disks/glue1/sdonegan/NDG3_workspace/buildouts/oai_document_ingester_MEDIN/ingestAutomation-upgrade/OAIBatch/oai_document_ingester.config' 
     19configFilePath = '/disks/glue1/sdonegan/NDG3_workspace/buildouts/oai_document_ingester_v4.3.0/ingestAutomation-upgrade/OAIBatch/oai_document_ingester.config' 
    2020 
    2121if not os.path.isfile(configFilePath): 
     
    6161filenames = os.listdir(current_dir + 'datacentre_config/') 
    6262 
    63 ingester = oai_document_ingester() 
     63ingester = Metadata_document_ingester() 
    6464for filename in filenames: 
    6565        if filename.endswith(config_suffix): 
     
    7676            # now invoke the ingest script 
    7777            logging.info("Running the ingest script for datacentre: %s" %datacentre) 
     78             
    7879            try: 
     80                 
    7981                run_counter += 1 
    80                 success,report = ingester.processDataCentre(datacentre,None, None, configFilePath) 
     82                processID = "autoIngest_" + str(random.randint(0,10000000)) 
     83                success,report = ingester.processDataCentre(datacentre,None, None, configFilePath, procID = processID) 
    8184                 
    8285                #add report to file 
Note: See TracChangeset for help on using the changeset viewer.