<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://t2bwiki.iihe.ac.be/index.php?action=history&amp;feed=atom&amp;title=ProdAgentProd</id>
	<title>ProdAgentProd - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://t2bwiki.iihe.ac.be/index.php?action=history&amp;feed=atom&amp;title=ProdAgentProd"/>
	<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=ProdAgentProd&amp;action=history"/>
	<updated>2026-05-16T09:10:57Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=ProdAgentProd&amp;diff=223&amp;oldid=prev</id>
		<title>Maintenance script: Created page with &quot; === Prodagent for LCG5 Production Team === * instructions for normal prodagent users * instructions for conversion of AlpGen ntpl  *[[P...&quot;</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=ProdAgentProd&amp;diff=223&amp;oldid=prev"/>
		<updated>2015-08-26T12:28:58Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot; === Prodagent for LCG5 Production Team === *&lt;a href=&quot;/ProdAgentUsers&quot; title=&quot;ProdAgentUsers&quot;&gt; instructions for normal prodagent users&lt;/a&gt; *&lt;a href=&quot;/ProdAgentAlp&quot; title=&quot;ProdAgentAlp&quot;&gt; instructions for conversion of AlpGen ntpl&lt;/a&gt;  *[[P...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&lt;br /&gt;
=== Prodagent for LCG5 Production Team ===&lt;br /&gt;
*[[ProdAgentUsers| instructions for normal prodagent users]]&lt;br /&gt;
*[[ProdAgentAlp| instructions for conversion of AlpGen ntpl]] &lt;br /&gt;
*[[ProdAgentLog| Log Information on Spring07 production assignments]]&lt;br /&gt;
==== operations ====&lt;br /&gt;
*[https://twiki.cern.ch/twiki/bin/view/CMS/LCGProdOperationsSteps summary of all steps]&lt;br /&gt;
*subscribe to &amp;#039;&amp;#039;hn-cms-mcOpsAATTcern.ch&amp;#039;&amp;#039;&lt;br /&gt;
*login as cmsprod1 on master3.iihe.ac.be (keys should be in place)&lt;br /&gt;
**bash is the default shell&lt;br /&gt;
**the login ~/.baschrc sets the environment and goes to the correct directory&lt;br /&gt;
*make your environment is ok and that you are using the correct production VOMS role.&lt;br /&gt;
*check the [https://twiki.cern.ch/twiki/bin/view/CMS/ProdOps Production Operations page]. The Belgian team is LCG5.&lt;br /&gt;
**look for assigned workflows and the ID of this workflow. To copy them to disk use the &amp;#039;&amp;#039;get_workflows.sh&amp;#039;&amp;#039; script in the directory workflows. For this script you have to give two numbers. These numbers are the ID numbers of first and the last workflow. The script will get ALL (also the ones which are not assigned to LCG5 ! ) the workflows with ID numbers between those two numbers.&lt;br /&gt;
*by clicking on the ID number of the workflow you can check if the workflow is GEN-SIM or reRECO&lt;br /&gt;
 &lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;1.&amp;#039;&amp;#039;&amp;#039; If it is &amp;#039;&amp;#039;&amp;#039;GEN-SIM&amp;#039;&amp;#039;&amp;#039; use the &amp;#039;&amp;#039;SubIIHE.py&amp;#039;&amp;#039; script. This script has the option: &amp;#039;&amp;#039;--map&amp;#039;&amp;#039;&lt;br /&gt;
**If you look in SubIIHE.py tou see that as argument of map you have to give a name which you have specified yourself. &lt;br /&gt;
**For example to submit testjobs you can &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
SubIIHE.py --map=iihe-test&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
**you see in SubIIHE.py that iihe-test replaces the workflow, njobs, nevts and sitepref&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
map[&amp;#039;iihe-test&amp;#039;]={&amp;#039;workflow&amp;#039;:&amp;#039;/beo5/cmsprod1/first-test/test-iihe-fullprod-1-Workflow.xml&amp;#039;,&amp;#039;njobs&amp;#039;:&amp;#039;10&amp;#039;,&amp;#039;nevts&amp;#039;:&amp;#039;10&amp;#039;,&amp;#039;sitePref&amp;#039;:&amp;#039;maite.iihe.ac.be&amp;#039;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
**If you give as extra option e.g. --nevts=5, it will overwrite the previous option (-nevts=10)&lt;br /&gt;
**If you give more then one sitepref the RB will chose the site it sends the job to&lt;br /&gt;
  &lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;2.&amp;#039;&amp;#039;&amp;#039; If it is &amp;#039;&amp;#039;&amp;#039;reRECO&amp;#039;&amp;#039;&amp;#039; use the &amp;#039;&amp;#039;SubSkimIIHE.py&amp;#039;&amp;#039; script. &lt;br /&gt;
&lt;br /&gt;
*check the status using the monitoring webpage.&lt;br /&gt;
**also check the http://cmsdbs.cern.ch/DBS2_discovery/?userMode=expert to see if the number of events are in DBS. (eg [[Image(dbs-discovery-experts.png,25%)]]&lt;br /&gt;
 &lt;br /&gt;
**detailed explanation: insert the workflows in the PA system: [https://twiki.cern.ch/twiki/bin/view/CMS/ProdAgentRequestInjector full details]&lt;br /&gt;
**the &amp;#039;&amp;#039;InjectTestLCG.py&amp;#039;&amp;#039; script is a wrapper for most of the following steps&lt;br /&gt;
**the start script creates an alias &amp;#039;&amp;#039;publi&amp;#039;&amp;#039; for &amp;lt;tt&amp;gt;python2.4 $PRODAGENT_ROOT/util/publish.py&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  publi RequestInjector:SetWorkflow  /some/path/to/MyWorkflow.xml&lt;br /&gt;
  publi NewDataset /some/path/to/MyWorkflow.xml&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Phedex the dataset (closing blocks)&lt;br /&gt;
**After producing a certain amount of events they should be migrated to Global DBS/DLS and injected into PhEDEX. The steps required are described in: [https://twiki.cern.ch/twiki/bin/view/CMS/ProdAgentPhEDExInterface#Operation_steps_for_PhEDEX_injec opertation step for injection.]&lt;br /&gt;
**In /beo5/cmsprod1/tools you can find a script which does the first three step for you: phedex_the_dataset.sh. The script takes as argument the path of the dataset&lt;br /&gt;
**you can look for the datasetpath on DBS.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  phedex_the_dataset.sh /mc-onsel-120_double_chHiggs/FEVT/CMSSW_1_2_0-FEVT-1166726234&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Closing the dataset&lt;br /&gt;
**When all required events are produced you have to close the dataset&lt;br /&gt;
**The script CloseDataSet.py will do this for you &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  CloseDataSet.py --datasetpath=/mc-onsel-120_double_chHiggs/FEVT/CMSSW_1_2_0-FEVT-1166726234&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
**Check DBS to see that the status is closed.&lt;br /&gt;
&lt;br /&gt;
==== finishing a workflow ====&lt;br /&gt;
*check for failed jobs or check the DBS discovery page if there are enough events in the unmerged dataset&lt;br /&gt;
*check if there are enough events in the merged dataset or see if there are lots of merge failures&lt;br /&gt;
**use the &amp;lt;tt&amp;gt;double_check.py&amp;lt;/tt&amp;gt; script to check the status of the jobs (in the SuccessArchiveDir)&lt;br /&gt;
**use the &amp;lt;tt&amp;gt;check_merge.py&amp;lt;/tt&amp;gt; script to check for current merges and to resubmit failed ones&lt;br /&gt;
**use the &amp;lt;tt&amp;gt;force_merge.py&amp;lt;/tt&amp;gt; script to force all remaining unmerged events to be merged&lt;br /&gt;
*wait until previous jobs are finished &lt;br /&gt;
*use the &amp;lt;tt&amp;gt;phedex_the_dataset.sh&amp;lt;/tt&amp;gt; script to close all fileblocks, migrate to global dbs and to produce the phedex injection files&lt;br /&gt;
*use &amp;lt;tt&amp;gt;CloseDataSet.py&amp;lt;/tt&amp;gt; to close the dataset completely&lt;br /&gt;
&lt;br /&gt;
==== using production role ====&lt;br /&gt;
*destroy current proxy and start using new one with production VOMS role&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  voms-proxy-destroy&lt;br /&gt;
  source /msa3/prodagent/new_proxy_prod.sh&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== bari monitoring system ====&lt;br /&gt;
*start/stop it with&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  Start the deamon to get component log messages updated regularly :&lt;br /&gt;
  (cd /scratch/PA/cmsprod1/monitoring/apache/htdocs/PA; nohup sh ComponentLog.sh &amp;amp;)&lt;br /&gt;
&lt;br /&gt;
  Start apache:&lt;br /&gt;
  /scratch/PA/cmsprod1/monitoring/apache/bin/apachectl start&lt;br /&gt;
&lt;br /&gt;
  Point your browser to http://localhost:8080/PA/index.php&lt;br /&gt;
&lt;br /&gt;
  When necessary, stop the apache server:&lt;br /&gt;
  /scratch/PA/cmsprod1/monitoring/apache/bin/apachectl stop&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*remote connection: since the webpage is only accessible from master3 (for security reasons), some special steps need to be taken to use it. &lt;br /&gt;
**SSH tunnel setup on windows  &lt;br /&gt;
**PuTTY should have this feature [http://thinkhole.org/wp/2006/05/10/howto-secure-firefox-and-im-with-putty/ example setup]&lt;br /&gt;
**example setup [http://www.ist.uwaterloo.ca/security/howto/2004-10-21/email-tunnels.shtml with windows ssh client]   &lt;br /&gt;
&lt;br /&gt;
**SSH tunnel setup on linux&lt;br /&gt;
**standard tunnel setup. (for more info see &amp;#039;&amp;#039;man ssh&amp;#039;&amp;#039;, &amp;#039;&amp;#039;-L&amp;#039;&amp;#039; option). this sets up a tunnel for a local single port &amp;#039;&amp;#039;&amp;lt;localportnumber&amp;gt;&amp;#039;&amp;#039; to a single destination &amp;#039;&amp;#039;&amp;lt;destinationhost&amp;gt;:&amp;lt;destinationport&amp;gt;&amp;#039;&amp;#039; through host &amp;#039;&amp;#039;&amp;lt;machineusedfortunnel&amp;gt;&amp;#039;&amp;#039;. all your local apllication can use this without modification.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  ssh -L &amp;lt;localportnumber&amp;gt;:&amp;lt;destinationhost&amp;gt;:&amp;lt;destinationport&amp;gt; &amp;lt;machineusedfortunnel&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
**eg using following&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
   ssh -L 8081:localhost:8081 master3.iihe.ac.be&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
   you can now point your browser to http://localhost:8081/PA/index.php without any problem&lt;br /&gt;
&lt;br /&gt;
**application forwarding: this forwards all traffic through this tunnel, but needs extra settings to your local apllication&lt;br /&gt;
***connect to master using this comment&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 ssh -D 10001 master3.iihe.ac.be&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
***in firefox, go to &amp;#039;&amp;#039;Edit&amp;#039;&amp;#039;, &amp;#039;&amp;#039;Preferences&amp;#039;&amp;#039;, &amp;#039;&amp;#039;General&amp;#039;&amp;#039;, &amp;#039;&amp;#039;Connection Settings&amp;#039;&amp;#039;&lt;br /&gt;
***select &amp;#039;&amp;#039;manual proxy configuration&amp;#039;&amp;#039;&lt;br /&gt;
***setup as in the following picture, then click &amp;#039;&amp;#039;OK&amp;#039;&amp;#039; and &amp;#039;&amp;#039;Close&amp;#039;&amp;#039;. &lt;br /&gt;
     [[Image(firefox-proxy-socks5.png, 25%)]]&lt;br /&gt;
***now all your webtraffic is routed through your ssh session, and now you can point your webbrowser to [http://localhost:8081/PA/index.php PA cmsprod1] &lt;br /&gt;
***[http://priyadi.net/archives/2005/03/18/socks-tunnel-with-openssh/ example setup link]&lt;br /&gt;
&lt;br /&gt;
*Looking for the reason of Failure/Abortion&lt;br /&gt;
**Once a job has failed it will be resubmitted automatically. When it fails ten times it will appear in /beo5/cmsprod1/FailureArchiveDir&lt;br /&gt;
**You can look in the stdout (or stderr) file to look where it went wrong&lt;br /&gt;
**If a job has not yet failed ten times you have to look in the JobCreator directory (but there are a lot of files in there)&lt;br /&gt;
**You also can use. This also gives the same information as the stdout file&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
edg-job-get-logging-info -v 2 https://rb122.cern.ch:9000/j0Eiki7h__eyBcKLpW12Pw&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 ///bossq -taskid 23202 -full&lt;br /&gt;
&lt;br /&gt;
==== LCG5 details ====&lt;br /&gt;
*[[ProdAgentFailures| Prodagent failures tips and tricks]]&lt;br /&gt;
*[https://twiki.cern.ch/twiki/bin/view/CMS/ProdForCSA06#DBS_Instance_Assignments DBS/DLS instances]&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  prodAgent-edit-config --component=LocalDBS --parameter=DBSURL --value=https://cmsdbsprod.cern.ch:8443/cms_dbs_prod_local_05_writer/servlet/DBSServlet&lt;br /&gt;
  prodAgent-edit-config --component=RequestInjector --parameter=FirstRun --value=40000000&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
*[https://twiki.cern.ch/twiki/bin/view/CMS/ProdForCSA06#CE_list_for_LCG_5_Primary_Contac CE list]&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 lcg-infosites --vo cms closeSE &lt;br /&gt;
&amp;lt;/pre&amp;gt;  &lt;br /&gt;
  &amp;#039;&amp;#039;&amp;#039;Use the closeSE in the &amp;#039;&amp;#039;--site-pref=&amp;#039;&amp;#039; option &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
**ingrid.cism.ucl.ac.be &lt;br /&gt;
**closeSE: ingrid-se02.cism.ucl.ac.be&lt;br /&gt;
**contact: gridadmAATTfynu.ucl.ac.be&lt;br /&gt;
**slots: 30-70&lt;br /&gt;
**gridce.iihe.ac.be&lt;br /&gt;
**closeSE: maite.iihe.ac.be&lt;br /&gt;
**contact: grid_adminAATTlistserv.vub.ac.be&lt;br /&gt;
**slots: 40&lt;br /&gt;
**grid10.lal.in2p3.fr&lt;br /&gt;
**closeSE: grid11.lal.in2p3.fr, grid05.lal.in2p3.fr, grid03.lal.in2p3.fr&lt;br /&gt;
**contact: igor.semenioukAATTpoly.in2p3.fr, jouvinAATTlal.in2p3.fr, grid.supportAATTgrif.fr&lt;br /&gt;
**slots: 100&lt;br /&gt;
**cclcgceli02.in2p3.fr&lt;br /&gt;
**closeSE: ccsrm.in2p3.fr&lt;br /&gt;
**contact: cms-supportAATTcc.in2p3.fr&lt;br /&gt;
**slots: 210&lt;br /&gt;
**polgrid1.in2p3.fr &lt;br /&gt;
**closeSE: polgrid2.in2p3.fr, polgrid4.in2p3.fr&lt;br /&gt;
**contact: igor.semenioukAATTpoly.in2p3.fr, grid.supportAATTgrif.fr&lt;br /&gt;
**slots: 20&lt;br /&gt;
**CEA: node07.datagrid.cea.fr&lt;br /&gt;
**closeSE: node12.datagrid.cea.fr&lt;br /&gt;
**contact: grid.supportAATTgrif.fr&lt;br /&gt;
**ce.polgrid.pl&lt;br /&gt;
**closeSE: se.polgrid.pl&lt;br /&gt;
**contact: lcgAATTfuw.edu.pl&lt;br /&gt;
**slots: ??&lt;br /&gt;
**oberon.hep.kbfi.ee&lt;br /&gt;
**closeSE: io.hep.kbfi.ee&lt;br /&gt;
**contact: gridAATTnicpb.ee&lt;br /&gt;
**slots: ?&lt;br /&gt;
**a01-004-128,ce-fzk .gridka.de&lt;br /&gt;
**closeSE:&lt;br /&gt;
**contact: lcg-adminAATTlistserv.fzk.de, Artem.TrunovAATTcern.ch&lt;br /&gt;
**slots: ?&lt;br /&gt;
**desy&lt;br /&gt;
**contact: egeeAATTdesy.de&lt;br /&gt;
**RWTH&lt;br /&gt;
**contact: lcg-contactAATTphysik.rwth-aachen.de&lt;br /&gt;
**All CEs/SEs: [https://twiki.cern.ch/twiki/bin/view/CMS/ProdOps#CE_list_for_LCG_5_Primary_Contac CE list for LCG (5) ]&lt;br /&gt;
**Contacting information for (former) LCG2 sites: [http://goc.grid.sinica.edu.tw/gstat/ Gstat monitoring]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
</feed>