Thanks Iwase. Looks good to me.

I ran it this morning and it works as expected.

Also noticed your spelling correction, it's spelt 'behaviour' in this country, 
but I guess we all have to adopt American spelling ;-)

Thanks again.


-----Original Message-----
From: Iwase Yusuke [mailto:iwase.yusu...@gmail.com] 
Sent: Thursday, July 21, 2016 3:00 AM
To: FORDYCE,ALAN (K-Scotland,ex1) <alan_ford...@keysight.com>; v...@duke.edu
Cc: ryu-devel@lists.sourceforge.net
Subject: Re: [Ryu-devel] KeyboardInterrupt (ctrl-c) and RYU

Hi Alan and Victor,

Thank you very much for your suggestions and patch!

But, I am just one of the contributers for Ryu.

Then, would you review my attached patch?
If this patch looks good, this might be adopted through Ryu-devel.

FYI, with this patch, ryu-manager will outputs messages as follows when killed 
by keyboard.
e.g.)
$ ryu-manager --verbose
loading app ryu.controller.ofp_handler
instantiating app ryu.controller.ofp_handler of OFPHandler BRICK ofp_event
   CONSUMES EventOFPSwitchFeatures
   CONSUMES EventOFPHello
   CONSUMES EventOFPEchoReply
   CONSUMES EventOFPEchoRequest
   CONSUMES EventOFPPortDescStatsReply
   CONSUMES EventOFPErrorMsg
   CONSUMES EventOFPPortStatus
^CKeyboard Interrupt received. Closing RYU application manager...
$

Thanks,
Iwase

On 2016年07月20日 22:24, alan_ford...@keysight.com wrote:
> Hi Iwase,
>
> Taking on board Victor's comments I made the following changes to my 
> manager.py file...
>
>     LOG = logging.getLogger('ryu.cmd.manager')
>
>     if CONF.enable_debugger:
>         msg = 'debugging is available (--enable-debugger option is turned on)'
>         LOG.info(msg)
>     else:
>         hub.patch(thread=True)
>
> ...
>
>     try:
>         hub.joinall(services)
>     except KeyboardInterrupt:
>         LOG.debug("Keyboard Interrupt received - RYU application manager 
> closing")
>     finally:
>         app_mgr.close()
>
>
> Is this something you would consider including in the next RYU release?
>
> Thanks again,
> Alan.
>
>
> -----Original Message-----
> From: alan_ford...@keysight.com [mailto:alan_ford...@keysight.com]
> Sent: Wednesday, July 20, 2016 11:39 AM
> To: v...@duke.edu
> Cc: ryu-devel@lists.sourceforge.net
> Subject: Re: [Ryu-devel] KeyboardInterrupt (ctrl-c) and RYU
>
> Your suggestion of a log message is probably the best approach.
>
> Thanks,
> Alan.
>
> -----Original Message-----
> From: Victor Orlikowski [mailto:v...@duke.edu]
> Sent: Wednesday, July 20, 2016 11:36 AM
> To: FORDYCE,ALAN (K-Scotland,ex1) <alan_ford...@keysight.com>
> Cc: ryu-devel@lists.sourceforge.net
> Subject: Re: [Ryu-devel] KeyboardInterrupt (ctrl-c) and RYU
>
> Also - should be obvious - but include a comment on the pass, explaining that 
> you're "papering over" the fact that eventlet doesn't properly wrap the 
> KeyboardInterrupt inside select()/poll()/epoll().
>
> Another suggestion: instead of a pass, a log message, at debug level (or 
> whatever desired default priority), that notes that Ctrl-C was received and 
> applications are terminating.
>
> Best,
> Victor
> --
> Victor J. Orlikowski <> vjo@[cs.]duke.edu
>
>> On Jul 20, 2016, at 11:20 AM, Victor Orlikowski <v...@duke.edu> wrote:
>>
>> Suggest just silently swallowing the KeyboardInterrupt (with a "pass"), 
>> since the finally block will cover the close().
>
> ----------------------------------------------------------------------
> -------- What NetFlow Analyzer can do for you? Monitors network 
> bandwidth and traffic patterns at an interface-level. Reveals which 
> users, apps, and protocols are consuming the most bandwidth. Provides 
> multi-vendor support for NetFlow, J-Flow, sFlow and other flows. Make 
> informed decisions using capacity planning 
> reports.http://sdm.link/zohodev2dev
> _______________________________________________
> Ryu-devel mailing list
> Ryu-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/ryu-devel
>
> ----------------------------------------------------------------------
> -------- What NetFlow Analyzer can do for you? Monitors network 
> bandwidth and traffic patterns at an interface-level. Reveals which 
> users, apps, and protocols are consuming the most bandwidth. Provides 
> multi-vendor support for NetFlow, J-Flow, sFlow and other flows. Make 
> informed decisions using capacity planning 
> reports.http://sdm.link/zohodev2dev
> _______________________________________________
> Ryu-devel mailing list
> Ryu-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/ryu-devel
>
------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev
_______________________________________________
Ryu-devel mailing list
Ryu-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ryu-devel

Reply via email to