System testing: Difference between revisions
(11 intermediate revisions by the same user not shown) | |||
Line 2: | Line 2: | ||
=Developments underway= | =Developments underway= | ||
==RSYNC daemon for mirror [MAC]== | |||
Trying to mirror between data disk and the mac via an rsync server... | |||
1) create the configuration file /etc/rsyncd.conf | |||
2) Setup rsyncd.conf file | |||
pid file = /var/run/rsyncd.pid | |||
lock file = /var/run/rsync.lock | |||
log file = /var/log/rsync.log | |||
port = 12000 | |||
[digiosdata] | |||
path = /media/DIGIOSDATA2/data/infl001 | |||
comment = RSYNC DATA FILES | |||
read only = true | |||
timeout = 300 | |||
#auth users = helios,dgs | |||
#secrets file = /etc/rsyncd.secrets -> promted for psswrd for some reason?? | |||
pid file: The process id file the daemon uses. | |||
lock file: The daemon lock file. | |||
log file: The location of the log file. | |||
port: If you do not want the rsync daemon to run on its default port (873) then you may specify a new port here. Make sure this port is open in your firewall. Rsync uses the TCP protocol for its transfers. | |||
[files]: This is the module name. The name used here is what you’ll be putting in the rsync pull command as the first part of the source (/files/../..). You can name it what you’d like and can have as many as you’d like. | |||
path: The file path for files associated with this module. | |||
comment: Descriptive comment for this module. | |||
read only: This tells the daemon the directory for this module is read-only. You cannot upload to it. For upload only, use upload only = true. | |||
timeout: Time, in seconds, the rsync daemon will wait before terminating a dead conenction. | |||
This is just a basic configuration. For a more detailed list of options, see the manual page. | |||
3) Start Daemon | |||
[root@digios1 ~]# rsync --daemon | |||
[root@digios1 ~]# ps x | grep rsync | |||
21494 ? Ss 0:00 rsync --daemon | |||
21496 pts/10 S+ 0:00 grep rsync | |||
[root@digios1 ~]# kill `cat /var/run/rsyncd.pid` | |||
[root@digios1 ~]# ps x | grep rsync | |||
21509 pts/10 S+ 0:00 grep rsync | |||
[root@digios1 ~]# | |||
4) Transfer data (syncing!) - remove --delete for copying only. | |||
rsync -rtuh --delete --progress rsync://[email protected]:12000/digiosdata . | |||
5) Adding users and psswrds [helios username seemed to work without changing .conf file so will not mod at this point.] | |||
Need users to ''start'' daemon i think. Added to the .conf file above -> did not allow starting of daemon by user [helios], kept prompting for psswrd so removed it. | |||
6) setting up some automation | |||
bash file ''sync_data.sh'' in working keeps mirror at 5 second interval...add to cron? | |||
#!/bin/bash | |||
ATTEMPTS=0 | |||
while [ "${ATTEMPTS}" -lt "100" ]; | |||
do | |||
rsync -rtuh --delete --progress rsync://[email protected]:12000/digiosdata /Users/heliosdigios/experiments/infl001_19O/data/. | |||
ATTEMPTS=$(expr ${ATTEMPTS} + 1) | |||
sleep 5 | |||
done | |||
==Universal Python Scripts== | |||
Did not work because unsure about which csv is correct and also the difference between master and slave digitzers was not defined... | |||
Working with python scripts to develop universal and clean generation of cmd's, db's, templates, drivers etc. At the same time, trying to understand where and when all HELIOS files are / come from. So far, I have changed: | Working with python scripts to develop universal and clean generation of cmd's, db's, templates, drivers etc. At the same time, trying to understand where and when all HELIOS files are / come from. So far, I have changed: | ||
/global/devel/gretTop/9-22/dgsIoc/iocBoot/iocArray | /global/devel/gretTop/9-22/dgsIoc/iocBoot/iocArray | ||
Line 12: | Line 77: | ||
dgsGlobals_HELIOS_GLBL.db | dgsGlobals_HELIOS_GLBL.db | ||
setup a co of the /output/ svn inside here as well for only the '''dgsGlobals_HELIOS*.db''' files | setup a co of the /output/ svn inside here as well for only the '''dgsGlobals_HELIOS*.db''' files | ||
Not sure which '''.csv''' file to use. Notice a diff in 20160602 to 201611XX of the MasterDigitizerRegisterMap.csv (but not the MDRM.csv) ?? | |||
Try the 20160602 one...?? Seems to match what was done it the 20160602 but '''db''' files do not match what was currently on the DIGIOS disk. | |||
Will have to try it and see... | |||
On the local digios1 daq (with the development HD in place). | On the local digios1 daq (with the development HD in place). |
Latest revision as of 17:04, July 18, 2018
Now that we have a working system and Digitizer Tester, we need to learn and test the attributes of the system. To do this, a list of possible test needs are below. These should be organized and the work divided for people to gain experience as well.
Developments underway
RSYNC daemon for mirror [MAC]
Trying to mirror between data disk and the mac via an rsync server...
1) create the configuration file /etc/rsyncd.conf
2) Setup rsyncd.conf file
pid file = /var/run/rsyncd.pid lock file = /var/run/rsync.lock log file = /var/log/rsync.log port = 12000 [digiosdata] path = /media/DIGIOSDATA2/data/infl001 comment = RSYNC DATA FILES read only = true timeout = 300 #auth users = helios,dgs #secrets file = /etc/rsyncd.secrets -> promted for psswrd for some reason??
pid file: The process id file the daemon uses. lock file: The daemon lock file. log file: The location of the log file. port: If you do not want the rsync daemon to run on its default port (873) then you may specify a new port here. Make sure this port is open in your firewall. Rsync uses the TCP protocol for its transfers. [files]: This is the module name. The name used here is what you’ll be putting in the rsync pull command as the first part of the source (/files/../..). You can name it what you’d like and can have as many as you’d like. path: The file path for files associated with this module. comment: Descriptive comment for this module. read only: This tells the daemon the directory for this module is read-only. You cannot upload to it. For upload only, use upload only = true. timeout: Time, in seconds, the rsync daemon will wait before terminating a dead conenction. This is just a basic configuration. For a more detailed list of options, see the manual page.
3) Start Daemon
[root@digios1 ~]# rsync --daemon [root@digios1 ~]# ps x | grep rsync 21494 ? Ss 0:00 rsync --daemon 21496 pts/10 S+ 0:00 grep rsync [root@digios1 ~]# kill `cat /var/run/rsyncd.pid` [root@digios1 ~]# ps x | grep rsync 21509 pts/10 S+ 0:00 grep rsync [root@digios1 ~]#
4) Transfer data (syncing!) - remove --delete for copying only.
rsync -rtuh --delete --progress rsync://[email protected]:12000/digiosdata .
5) Adding users and psswrds [helios username seemed to work without changing .conf file so will not mod at this point.] Need users to start daemon i think. Added to the .conf file above -> did not allow starting of daemon by user [helios], kept prompting for psswrd so removed it.
6) setting up some automation
bash file sync_data.sh in working keeps mirror at 5 second interval...add to cron?
#!/bin/bash ATTEMPTS=0 while [ "${ATTEMPTS}" -lt "100" ]; do rsync -rtuh --delete --progress rsync://[email protected]:12000/digiosdata /Users/heliosdigios/experiments/infl001_19O/data/. ATTEMPTS=$(expr ${ATTEMPTS} + 1) sleep 5 done
Universal Python Scripts
Did not work because unsure about which csv is correct and also the difference between master and slave digitzers was not defined... Working with python scripts to develop universal and clean generation of cmd's, db's, templates, drivers etc. At the same time, trying to understand where and when all HELIOS files are / come from. So far, I have changed:
/global/devel/gretTop/9-22/dgsIoc/iocBoot/iocArray vme0*.HELIOS.cmd
setup a co of the /output/ svn inside of the above directory just for the .cmd and cdCommands_HELIOS files
and (but in some strange place that does not seem to be called by the .cmd's). So also trying to put them
/global/devel/gretTop/9-22/dgsIoc/db dgsGlobals_HELIOS_VME0*.db dgsGlobals_HELIOS_GLBL.db
setup a co of the /output/ svn inside here as well for only the dgsGlobals_HELIOS*.db files
Not sure which .csv file to use. Notice a diff in 20160602 to 201611XX of the MasterDigitizerRegisterMap.csv (but not the MDRM.csv) ?? Try the 20160602 one...?? Seems to match what was done it the 20160602 but db files do not match what was currently on the DIGIOS disk. Will have to try it and see...
On the local digios1 daq (with the development HD in place).
Look into templates, other db, etc.!!
List of tests to perform
No particular order at this point just vomiting ideas...
- Data collection:
- i) single channel ii) multiple channels iii) HELIOS-like input data to multiple channels iv) across a number of digitizers
- Data processing:
- i) GEBMerge and GEBSort tests ii) simple data processing framework iii) online??
- Full feature tests:
- i) GammaWare buttons do what they are supposed to and are understood ii) equivalent epics commands are identified and tested iii) Bug Reports
- Trigger tests:
- i) how to implement trigger system tests into data ii) HELIOS-like multi-channel input tests
- Rate tests:
- i) trigger and channel rate tests of both low and high rate data ii) data throughput checks and throttle checks iii) total disk space usage for typical experiment
TRACES Trace EDM window plots DAQ$(CR)_CS_Trace where CR = VME# (1,2,3....)
Values for TraceBd, TraceLen, TraceChan, etc set in screen, where are these in a file? Start search:
cd "/global/devel/gretTop/9-22/dgsIoc/iocBoot/iocArray/"