EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  <20202021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  <20202021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: How to run IOC in docker containers properly
From: Mark Rivers via Tech-talk <tech-talk at aps.anl.gov>
To: Ralph Lange <ralph.lange at gmx.de>, "Johnson, Andrew N." <anj at anl.gov>
Cc: EPICS tech-talk <tech-talk at aps.anl.gov>
Date: Thu, 18 Jun 2020 19:23:22 +0000
>  I also want to provide the same interface to all our IOC consoles, both soft IOCs run under procServ and those that screen connects to via ssh to their terminal server. If I use screen to do the logging then the same logging solution works for both kinds of IOC; if I use procServ I still have to work out how to log the ssh-connected IOCs.


We use procServ to log our vxWorks IOCs that are connected through terminal servers.  In our case we using telnet to the terminal server, and the procServ task is that telnet session:


/usr/bin/telnet gsets2.cars.aps.anl.gov 4004


This is a snippet from a vxWorks log file where procServ adds the timestamp (In need to change the formatting to add some spaces):


Mon Jan 28 13:51:45 2019#dbpf("13IDA:QE1:ValuesPerRead.LOPR","15")
Mon Jan 28 13:51:45 2019
Mon Jan 28 13:51:45 2019# dbpf("13IDA:QE2:ValuesPerRead.LOPR","15")
Mon Jan 28 13:51:45 2019# dbpf("13IDA:QE2:ValuesPerRead","40")
Mon Jan 28 13:51:45 2019
Mon Jan 28 13:51:45 2019Done executing startup script '/home/epics/support/CARS/iocBoot/ioc13ida/st.cmd'.
Mon Jan 28 13:51:46 2019
Mon Jan 28 13:51:46 2019ioc13ida>
Mon Jan 28 14:00:26 2019ioc13ida> dbior
Mon Jan 28 14:00:34 2019Driver: motorA3200
Mon Jan 28 14:00:34 2019Driver: drvMDrive
Mon Jan 28 14:00:34 2019    No MDrive controllers configured.
Mon Jan 28 14:00:34 2019Driver: drvPIC848
Mon Jan 28 14:00:34 2019    No PIC848 controllers configured.
Mon Jan 28 14:00:34 2019Driver: drvAvme9210
Mon Jan 28 14:00:34 2019Driver: drvSoloist
Mon Jan 28 14:00:34 2019    No Soloist controllers configured.
Mon Jan 28 14:00:34 2019Driver: drvMVP2001
Mon Jan 28 14:00:34 2019    No MVP2001 CHAINS configured.
Mon Jan 28 14:00:34 2019Driver: drvMAXv
Mon Jan 28 14:00:34 2019    Oms MAXv motor card #0 @ 0xfbff8000, id: MAXv-8000 ver:1.34, s/n:000158, FPGA:B3:A7 BOOT:1.3 - Oregon Micro Systems
Mon Jan 28 14:00:34 2019    Oms MAXv motor card #1 @ 0xfbff9000, id: MAXv-8000 ver:1.34, s/n:000194, FPGA:B3:A7 BOOT:1.3 - Oregon Micro Systems
Mon Jan 28 14:00:35 2019    Oms MAXv motor card #2 @ 0xfbffa000, id: MAXv-8000 ver:1.34, s/n:000759, FPGA:B3:A7 BOOT:1.3 - Oregon Micro Systems
--More--(9%)



Mark




________________________________
From: Tech-talk <tech-talk-bounces at aps.anl.gov> on behalf of Johnson, Andrew N. via Tech-talk <tech-talk at aps.anl.gov>
Sent: Thursday, June 18, 2020 1:59 PM
To: Ralph Lange
Cc: EPICS tech-talk
Subject: Re: How to run IOC in docker containers properly


On Jun 18, 2020, at 10:58 AM, Ralph Lange via Tech-talk <tech-talk at aps.anl.gov<mailto:tech-talk at aps.anl.gov>> wrote:

And, honestly: Connecting to a live IOC to be able to see the log of a previous run... I would call that a risk, not a feature.

When it's 3am and you're diagnosing a problem on an IOC, you're already connected to its console and you want to see whether the previous boot gave a similar warning message, it's a lot easier to page up than it is to connect to some other system (which you probably don't use very often) just to view the logfile.

We don't currently keep a permanent record of the console output from our IOCs but that is also on my list to implement for the APS Upgrade. I haven't decided yet whether to do the logging using procServ or screen. I also want to provide the same interface to all our IOC consoles, both soft IOCs run under procServ and those that screen connects to via ssh to their terminal server. If I use screen to do the logging then the same logging solution works for both kinds of IOC; if I use procServ I still have to work out how to log the ssh-connected IOCs.

It's a risk, but screen has been an essential part of our systems since we started using soft IOCs without our hitting that issue to my knowledge. I don't have an alternative solution, I assume tmux might behave the same?

- Andrew

--
Complexity comes for free, simplicity you have to work for.


References:
How to run IOC in docker containers properly xiao zhang via Tech-talk
Re: How to run IOC in docker containers properly Johnson, Andrew N. via Tech-talk
Re: How to run IOC in docker containers properly Ben Franksen via Tech-talk
Re: How to run IOC in docker containers properly J. Lewis Muir via Tech-talk
Re: How to run IOC in docker containers properly Johnson, Andrew N. via Tech-talk
Re: How to run IOC in docker containers properly Konrad, Martin via Tech-talk
Re: How to run IOC in docker containers properly Johnson, Andrew N. via Tech-talk
Re: How to run IOC in docker containers properly Ralph Lange via Tech-talk
Re: How to run IOC in docker containers properly Johnson, Andrew N. via Tech-talk

Navigate by Date:
Prev: RE: RE: No PV record found when build ASYN application on Windows Freddie Akeroyd - UKRI STFC via Tech-talk
Next: Re: How to run IOC in docker containers properly J. Lewis Muir via Tech-talk
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  <20202021  2022  2023  2024 
Navigate by Thread:
Prev: Re: How to run IOC in docker containers properly Johnson, Andrew N. via Tech-talk
Next: Re: How to run IOC in docker containers properly J. Lewis Muir via Tech-talk
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  <20202021  2022  2023  2024 
ANJ, 18 Jun 2020 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·