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  2020  2021  2022  <20232024  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  2020  2021  2022  <20232024 
<== Date ==> <== Thread ==>

Subject: 回复: [EXTERNAL] procServ comminication with phoebus problem
From: wang Ewen via Tech-talk <tech-talk at aps.anl.gov>
To: Mark Rivers <rivers at cars.uchicago.edu>
Cc: "tech-talk at aps.anl.gov" <tech-talk at aps.anl.gov>
Date: Fri, 2 Jun 2023 16:35:13 +0800

Hi Mark ,

   I can't run it properly .This the log:

[root@localhost ewen]# start_ioc ioc01

bash: start_ioc: command not found..

[root@localhost ewen]# python start_ioc ioc01

/usr/local/bin/procServ --logstamp -n "ioc01_IOC" -L /home/ewen/logs/ioc01.log 20008 /usr/local/EPICS/ioc01/iocBoot/iocmytest/st.cmd

/usr/local/bin/procServ: spawning daemon process: 7619

Trying ::1...

telnet: connect to address ::1: Connection refused

Trying 127.0.0.1...

Connected to localhost.

Escape character is '^]'.

@@@ Welcome to procServ (procServ Process Server 2.9.0-dev)

@@@ Use ^X to kill the child, auto restart mode is ON, use ^T to toggle auto restart

@@@ procServ server PID: 7619

@@@ Server startup directory: /home/ewen

@@@ Child startup directory: /home/ewen

@@@ Child "ioc01_IOC" started as: /usr/local/EPICS/ioc01/iocBoot/iocmytest/st.cmd

@@@ Child log file: /home/ewen/logs/ioc01.log

@@@ Child "ioc01_IOC" is SHUT DOWN

@@@ procServ server started at: Fri Jun  2 16:18:07 2023

@@@ 0 user(s) and 0 logger(s) connected (plus you)

@@@ ^R or ^X restarts the child, ^Q quits the server

@@@ Restarting child "ioc01_IOC"

@@@    (as /usr/local/EPICS/ioc01/iocBoot/iocmytest/st.cmd)

@@@ The PID of new child "ioc01_IOC" is: 7621

@@@ @@@ @@@ @@@ @@@

/usr/local/bin/procServ: child could not execute: /usr/local/EPICS/ioc01/iocBoot/iocmytest/st.cmd, No such file or directory

 

@@@ @@@ @@@ @@@ @@@

@@@ Received a sigChild for process 7621. Normal exit status = 255

@@@ Current time: Fri Jun  2 16:18:08 2023

@@@ Child process is shutting down, a new one will be restarted shortly

@@@ ^R or ^X restarts the child, ^Q quits the server

@@@ Restarting child "ioc01_IOC"

@@@    (as /usr/local/EPICS/ioc01/iocBoot/iocmytest/st.cmd)

@@@ The PID of new child "ioc01_IOC" is: 7631

@@@ @@@ @@@ @@@ @@@

/usr/local/bin/procServ: child could not execute: /usr/local/EPICS/ioc01/iocBoot/iocmytest/st.cmd, No such file or directory

 

[root@localhost ewen]# ps aux | grep procServ

root       7736  0.0  0.0  16928  1284 ?        Ss   16:25   0:00 /usr/local/bin/procServ --logstamp -n ioc01_IOC -L /home/ewen/logs/ioc01.log 20008 /usr/local/EPICS/ioc01/iocBoot/iocmytest/st.cmd

root       7856  0.0  0.0 112816   972 pts/2    S+   16:26   0:00 grep --color=auto procServ

 

This the IOCLIST set:

IOCLIST = """

ioc01            20008   1  /usr/local/EPICS/ioc01/iocBoot/iocmytest/st.cmd

iocs             20009   1  /usr/local/EPICS/ioc01/iocBoot/iocmyexample/st.cmd

 

# real iocs, terminal servers

#13LAB2          20041   1  /usr/bin/telnet gsets1.cars.aps.anl.gov 4002

#13IDE           20028   1  /usr/bin/telnet gsets1.cars.aps.anl.gov 4003

#13BMD           20026   1  /usr/bin/telnet gsets1.cars.aps.anl.gov 4004

……

 

# procServ command

#procserv = '/usr/local/bin/procServ -n "%s_IOC" --logstamp -L /home/epics/logs/%s.log %s %s'

procserv = '/usr/local/bin/procServ --logstamp -n "%s_IOC" -L /home/ewen/logs/%s.log %s %s'

……

 

I don't know where the problem is set,please help me check,Thank you .

 

Best regards,

 

Ewen

 

 

 

 

发件人: Mark Rivers
发送时间: 202362 7:13
收件人: wang Ewen; Hartman, Steven
抄送: tech-talk at aps.anl.gov
主题: RE: [EXTERNAL] procServ comminication with phoebus problem

 

Hi Ewen,

 

  1. Thank you for your reply, it's working fine now. I want to run more than one iocs at the same times communication with css phoebus,is it the same port 5064? And just change the ioc name and port?

 

Yes, you normally always use the same CA port, 5064.

 

For procServ just change what script it executes to start the IOC, and the telnet port number.

 

Matt Newville wrote a nice Python script for starting our IOCs, which I have attached. 

 

To add a new IOC you just added it to the IOCLIST.  To start the IOC called 13BMD_XPS you just type

 

start_ioc 13BMD_XPS

 

That will also open a telnet connection to the correct port unless the “-s” or “–silent” option is used.

 

  1. Is it can autorestart when the server restart?

 

start_ioc takes a “-b” or “–onboot” flag in which case it starts all IOCs that are flagged to start on boot. 

 

If the IOC is already running then typing

 

start_ioc 13BMD_XPS

 

will just telnet to the correct port.

 

Mark

 

 

 

 

 

 

 

 

From: Tech-talk <tech-talk-bounces at aps.anl.gov> On Behalf Of wang Ewen via Tech-talk
Sent: Thursday, June 1, 2023 5:00 PM
To: Hartman, Steven <hartmansm at ornl.gov>
Cc: tech-talk at aps.anl.gov
Subject:
回复: [EXTERNAL] procServ comminication with phoebus problem

 

Hi ,

   Thank you for your reply, it's working fine now. I want to run more than one iocs at the same times communication with css phoebus,is it the same port 5064? And just change the ioc name and port?

Is it can autorestart when the server restart?

Best regards,

Ewen

Windows 邮件发送

 

发件人: Hartman, Steven
发送时间: 202362 0:15
收件人: wang Ewen
抄送: tech-talk at aps.anl.gov
主题: Re: [EXTERNAL] procServ comminication with phoebus problem

 

 

On Jun 1, 2023, at 10:59 AM, wang Ewen via Tech-talk <tech-talk at aps.anl.gov> wrote:

 

[root@localhost iocmyexample]# procServ -n "my-ioc" -L my-ioc.log -P 8888 -i "^D^C" /usr/local/EPICS/iocs/iocBoot/iocmyexample/st.cmd

. . .

My phoebus setting.ini is:: 

org.phoebus.pv.ca/addr_list=192.168.238.134:8888

 

 

 

That is incorrect. In your configuration, procServ is using port 8888 to provide connection to the IOC console it serves. Channel Access is still using port 5064. Try org.phoebus.pv.ca/addr_list=192.168.238.134:5064.

You should be able to telnet to port 8888 to connect to the IOC shell via procServ. 

 

 

 

 

 

-- 

Steven Hartman

 

 

 

 

 


Replies:
Re: [EXTERNAL] procServ comminication with phoebus problem Mark Rivers via Tech-talk
References:
procServ comminication with phoebus problem wang Ewen via Tech-talk
Re: [EXTERNAL] procServ comminication with phoebus problem Hartman, Steven via Tech-talk
回复: [EXTERNAL] procServ comminication with phoebus problem wang Ewen via Tech-talk
RE: [EXTERNAL] procServ comminication with phoebus problem Mark Rivers via Tech-talk

Navigate by Date:
Prev: 回复: [EXTERNAL] procServ comminication with phoebus problem wang Ewen via Tech-talk
Next: Keysight oscilloscope DSOX1204a connection issue MuYuan Wang 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  2020  2021  2022  <20232024 
Navigate by Thread:
Prev: 回复: [EXTERNAL] procServ comminication with phoebus problem wang Ewen via Tech-talk
Next: Re: [EXTERNAL] procServ comminication with phoebus problem Mark Rivers 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  2020  2021  2022  <20232024 
ANJ, 02 Jun 2023 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·