Hi, since history apparently is implemented as a generator, you should break by *yourself* in python code. The history itself has no way of knowing that an arbitrary constraint is satisfied at a certain point. Pseudocode: max_age = 60*30 # only care for jobs in the last 30 minutes new_jobs = [] for job in htcondor.Schedd.history(): if job['EnteredCurrentStatus'] < time.time() - max_age: break # exit early, only older jobs after this point new_jobs.append(job) Cheers, Max > Am 15.11.2016 um 11:09 schrieb jiangxw@xxxxxxxxxxxxxxx: > > Thank you very mach. > Hope history() can provide a parameter setting history file like "-file" in condor_history command. > > NAMEïJiang Xiaowei > MAILïjiangxw@xxxxxxxxxxxxxxx > TELï010 8823 6024 > DEPARTMENTïComputing Center of IHEP > > From: Iain Steers > Date: 2016-11-15 17:56 > To: HTCondor-Users Mail List > Subject: Re: [HTCondor-users] python api about history > Ah I was thinking of the since and stop constraints. > > https://htcondor-wiki.cs.wisc.edu/index.cgi/tktview?tn=5642,56 > > Looks like they haven't been added to the python bindings yet. > ________________________________________ > From: HTCondor-users [htcondor-users-bounces@xxxxxxxxxxx] on behalf of jiangxw@xxxxxxxxxxxxxxx[jiangxw@mail.ihep.ac.cn] > Sent: 15 November 2016 10:53 > To: htcondor-users > Subject: Re: [HTCondor-users] python api about history > > Hi Iain, > Thanks for your advice. > I can catch your meaning. > I implemented that function like yours. > And the space of history files in our environments is 132G totally. > When I execute the script with the lines > requirements = "EnteredCurrentStatus <= %s && EnteredCurrentStatus > %s" % (current_time,pre_time) > job_history = self.schedd.history(requirements, projection, 0), > the script will take too long times. I think self.schedd.history() will look over all 132G history files. > How can I optimize it? > Thanks. > > Cheers, > Jiang Xiaowei > ________________________________ > NAMEïJiang Xiaowei > MAILïjiangxw@xxxxxxxxxxxxxxx > TELï010 8823 6024 > DEPARTMENTïComputing Center of IHEP > > From: Iain Steers<mailto:iain.steers@xxxxxxx> > Date: 2016-11-15 17:16 > To: HTCondor-Users Mail List<mailto:htcondor-users@xxxxxxxxxxx> > Subject: Re: [HTCondor-users] python api about history > Hi, > > history() can take a Requirement constraint as one of its arguments. > > In order to do this efficiently i would suggest something like the following. > > start_dt = datetime.datetime.now() - datetime.timedelta(minutes=30) > start_stamp = calendar.timegm(d.timetuple()) > schedd = htcondor.Schedd() > jobs = schedd.history('EnteredCurrentStatus >= {0}'.format(start_stamp)) > > This should return an iterator of all the jobs which were added to the history in the last half hour. > > Cheers, Iain > > ________________________________________ > From: HTCondor-users [htcondor-users-bounces@xxxxxxxxxxx] on behalf of jiangxw@xxxxxxxxxxxxxxx[jiangxw@mail.ihep.ac.cn] > Sent: 15 November 2016 10:08 > To: htcondor-users > Subject: [HTCondor-users] python api about history > > Hi all, > I used python api to get job history information then insert job information into database. > The function is htcondor.Schedd.history(). > But when the amount of the history files in "/var/lib/condor/spool/" became large, > htcondor.Schedd.history() will be executed slowly. > I want to gain the job history information every half hour. So I just need to look over the history file generated last half hour. > But the htcondor.Schedd.history() may look over all history files in "/var/lib/condor/spool" every time. > I can not find the parameter from htcondor.Schedd.history() like "condor_history -file". > Are there some ways to solve it? > Thanks for help. > > Best regards, > Jiang XiaoWei > ________________________________ > NAMEïJiang Xiaowei > MAILïjiangxw@xxxxxxxxxxxxxxx > TELï010 8823 6024 > DEPARTMENTïComputing Center of IHEP > _______________________________________________ > HTCondor-users mailing list > To unsubscribe, send a message to htcondor-users-request@xxxxxxxxxxx with a > subject: Unsubscribe > You can also unsubscribe by visiting > https://lists.cs.wisc.edu/mailman/listinfo/htcondor-users > > The archives can be found at: > https://lists.cs.wisc.edu/archive/htcondor-users/ > _______________________________________________ > HTCondor-users mailing list > To unsubscribe, send a message to htcondor-users-request@xxxxxxxxxxx with a > subject: Unsubscribe > You can also unsubscribe by visiting > https://lists.cs.wisc.edu/mailman/listinfo/htcondor-users > > The archives can be found at: > https://lists.cs.wisc.edu/archive/htcondor-users/ > _______________________________________________ > HTCondor-users mailing list > To unsubscribe, send a message to htcondor-users-request@xxxxxxxxxxx with a > subject: Unsubscribe > You can also unsubscribe by visiting > https://lists.cs.wisc.edu/mailman/listinfo/htcondor-users > > The archives can be found at: > https://lists.cs.wisc.edu/archive/htcondor-users/
Attachment:
smime.p7s
Description: S/MIME cryptographic signature