<div dir="ltr">As the web component is basically a thin admin interface for a background service and the web part will have zero load / reliability concerns, I am not too worried about using the built-in flask server, but it would be nice regardless to get uwsgi working. I put the uwsgi.ini in the project home in accordance with the instructions <a href="https://wikitech.wikimedia.org/w/index.php?title=Help:Tool_Labs/Web&oldid=796257#Python_.28uwsgi-plain.29">here</a>, does it actually belong in ~/www/python as you said?</div><br><div class="gmail_quote"><div dir="ltr">On Fri, Aug 19, 2016 at 1:55 PM Yuvi Panda <<a href="mailto:yuvipanda@gmail.com">yuvipanda@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Using the flask server directly for production uses is heavily<br>
discouraged by the flask community. There's a bunch of options you can<br>
try to pass to uwsgi (you can create an ini file in<br>
~/www/python/uwsg.ini and put them there) that should make it work<br>
better (<a href="https://github.com/unbit/uwsgi/issues/206" rel="noreferrer" target="_blank">https://github.com/unbit/uwsgi/issues/206</a> came up, am sure<br>
there are others).<br>
<br>
On Fri, Aug 19, 2016 at 1:45 PM, Anthony Di Franco <<a href="mailto:di.franco@gmail.com" target="_blank">di.franco@gmail.com</a>> wrote:<br>
> I don't think I can use uwsgi at all, since it seems to be conflicting with<br>
> my own use of multiprocessing and causing the hanging, so I switched to the<br>
> generic runner. I tried configuring uwsgi to enable threading and use a<br>
> single process and thread but that didn't work. But I might try again to get<br>
> it working later.<br>
><br>
> On Fri, Aug 19, 2016 at 9:28 AM Yuvi Panda <<a href="mailto:yuvipanda@gmail.com" target="_blank">yuvipanda@gmail.com</a>> wrote:<br>
>><br>
>> Hello! I'll investigate the bug! In the meantime, can you try using<br>
>><br>
>> <a href="https://wikitech.wikimedia.org/wiki/Help:Tool_Labs/Web/Kubernetes#python_.28uwsgi_.2B_python3.4.29" rel="noreferrer" target="_blank">https://wikitech.wikimedia.org/wiki/Help:Tool_Labs/Web/Kubernetes#python_.28uwsgi_.2B_python3.4.29</a><br>
>> instead of uwsgi-plain for python3.4? I'll amend the documentation<br>
>> shortly to refer to this directly as well...<br>
>><br>
>> On Fri, Aug 19, 2016 at 4:47 AM, Merlijn van Deen (valhallasw)<br>
>> <<a href="mailto:valhallasw@arctus.nl" target="_blank">valhallasw@arctus.nl</a>> wrote:<br>
>> > I'm not sure -- sounds like a bug! I've filed<br>
>> > <a href="https://phabricator.wikimedia.org/T143403" rel="noreferrer" target="_blank">https://phabricator.wikimedia.org/T143403</a> .<br>
>> ><br>
>> > Merlijn<br>
>> ><br>
>> > On 19 August 2016 at 11:32, Anthony Di Franco <<a href="mailto:di.franco@gmail.com" target="_blank">di.franco@gmail.com</a>><br>
>> > wrote:<br>
>> >><br>
>> >> One more question, I am using the generic webservice method since I<br>
>> >> need<br>
>> >> to do this to avoid the previous issue, but I seem to be running into<br>
>> >> an<br>
>> >> issue with the scripts, or doing something wrong in following<br>
>> >><br>
>> >> <a href="https://wikitech.wikimedia.org/wiki/Help:Tool_Labs/Web#Other_.2F_generic_web_servers" rel="noreferrer" target="_blank">https://wikitech.wikimedia.org/wiki/Help:Tool_Labs/Web#Other_.2F_generic_web_servers</a><br>
>> >> ( see below )<br>
>> >><br>
>> >> (new-env)tools.recitation-bot@tools-bastion-03:~$ webservice generic<br>
>> >> start<br>
>> >> /data/project/recitation-bot/new-bot/labs-startup.sh<br>
>> >> Starting webservice.<br>
>> >> (new-env)tools.recitation-bot@tools-bastion-03:~$ tail error.log<br>
>> >> usage: webservice-runner [-h]<br>
>> >>                          [--type<br>
>> >><br>
>> >> {tomcat,nodejs,generic,lighttpd,lighttpd-precise,lighttpd-plain,uwsgi-plain,uwsgi-python}]<br>
>> >>                          [--extra_args EXTRA_ARGS] [--port PORT]<br>
>> >>                          [--register-proxy]<br>
>> >> webservice-runner: error: unrecognized arguments: --extra-args<br>
>> >> /data/project/recitation-bot/new-bot/labs-startup.sh<br>
>> >> usage: webservice-runner [-h]<br>
>> >>                          [--type<br>
>> >><br>
>> >> {tomcat,nodejs,generic,lighttpd,lighttpd-precise,lighttpd-plain,uwsgi-plain,uwsgi-python}]<br>
>> >>                          [--extra_args EXTRA_ARGS] [--port PORT]<br>
>> >>                          [--register-proxy]<br>
>> >> webservice-runner: error: unrecognized arguments: --extra-args<br>
>> >> /data/project/recitation-bot/new-bot/labs-startup.sh<br>
>> >><br>
>> >><br>
>> >> On Thu, Aug 18, 2016 at 2:33 AM Merlijn van Deen (valhallasw)<br>
>> >> <<a href="mailto:valhallasw@arctus.nl" target="_blank">valhallasw@arctus.nl</a>> wrote:<br>
>> >>><br>
>> >>> Hi Anthony,<br>
>> >>><br>
>> >>> I've killed the jobs for you, and have restarted the webservice with<br>
>> >>> webservice uwsgi-plain start.<br>
>> >>><br>
>> >>> It's possible to do this as regular user as well, but this was not<br>
>> >>> documented. I've done so now, at<br>
>> >>> <a href="https://wikitech.wikimedia.org/wiki/Help:Tool_Labs/Grid#Stuck_jobs" rel="noreferrer" target="_blank">https://wikitech.wikimedia.org/wiki/Help:Tool_Labs/Grid#Stuck_jobs</a> .<br>
>> >>><br>
>> >>> Best,<br>
>> >>> Merlijn<br>
>> >>><br>
>> >>> On 18 August 2016 at 09:18, Anthony Di Franco <<a href="mailto:di.franco@gmail.com" target="_blank">di.franco@gmail.com</a>><br>
>> >>> wrote:<br>
>> >>>><br>
>> >>>> Hi all,<br>
>> >>>>  I'm back working on recitation-bot and I've hit a bit of a snag, not<br>
>> >>>> having noticed before starting the web service that I'd need to<br>
>> >>>> change the<br>
>> >>>> default configuration of uwsgi regarding threads to work with what<br>
>> >>>> I've<br>
>> >>>> written. Now my job is stuck:<br>
>> >>>><br>
>> >>>> (new-env)tools.recitation-bot@tools-bastion-03:~$ qdel -f 9915064<br>
>> >>>> tools.recitation-bot has registered the job 9915064 for deletion<br>
>> >>>> ............<br>
>> >>>> (new-env)tools.recitation-bot@tools-bastion-03:~$ qstat<br>
>> >>>> job-ID  prior   name       user         state submit/start at<br>
>> >>>> queue<br>
>> >>>> slots ja-task-ID<br>
>> >>>><br>
>> >>>><br>
>> >>>> -----------------------------------------------------------------------------------------------------------------<br>
>> >>>> 9915064 0.30005 uwsgi-plai tools.recita dr    08/18/2016 06:23:42<br>
>> >>>> webgrid-generic@tools-webgrid-     1<br>
>> >>>> (new-env)tools.recitation-bot@tools-bastion-03:~$ webservice status<br>
>> >>>> Your webservice is not running<br>
>> >>>> (new-env)tools.recitation-bot@tools-bastion-03:~$ webservice stop<br>
>> >>>> Your webservice is not running<br>
>> >>>> (new-env)tools.recitation-bot@tools-bastion-03:~$ webservice<br>
>> >>>> uwsgi-plain<br>
>> >>>> start<br>
>> >>>> Your job is already running<br>
>> >>>><br>
>> >>>> I'd be most grateful if someone with the power could help me clear it<br>
>> >>>> out. I've got the configuration fixed for the next uwsgi startup<br>
>> >>>> already.<br>
>> >>>><br>
>> >>>> Anthony<br>
>> >>>><br>
>> >>>> _______________________________________________<br>
>> >>>> Labs-l mailing list<br>
>> >>>> <a href="mailto:Labs-l@lists.wikimedia.org" target="_blank">Labs-l@lists.wikimedia.org</a><br>
>> >>>> <a href="https://lists.wikimedia.org/mailman/listinfo/labs-l" rel="noreferrer" target="_blank">https://lists.wikimedia.org/mailman/listinfo/labs-l</a><br>
>> >>>><br>
>> >>><br>
>> >>> _______________________________________________<br>
>> >>> Labs-l mailing list<br>
>> >>> <a href="mailto:Labs-l@lists.wikimedia.org" target="_blank">Labs-l@lists.wikimedia.org</a><br>
>> >>> <a href="https://lists.wikimedia.org/mailman/listinfo/labs-l" rel="noreferrer" target="_blank">https://lists.wikimedia.org/mailman/listinfo/labs-l</a><br>
>> >><br>
>> >><br>
>> >> _______________________________________________<br>
>> >> Labs-l mailing list<br>
>> >> <a href="mailto:Labs-l@lists.wikimedia.org" target="_blank">Labs-l@lists.wikimedia.org</a><br>
>> >> <a href="https://lists.wikimedia.org/mailman/listinfo/labs-l" rel="noreferrer" target="_blank">https://lists.wikimedia.org/mailman/listinfo/labs-l</a><br>
>> >><br>
>> ><br>
>> ><br>
>> > _______________________________________________<br>
>> > Labs-l mailing list<br>
>> > <a href="mailto:Labs-l@lists.wikimedia.org" target="_blank">Labs-l@lists.wikimedia.org</a><br>
>> > <a href="https://lists.wikimedia.org/mailman/listinfo/labs-l" rel="noreferrer" target="_blank">https://lists.wikimedia.org/mailman/listinfo/labs-l</a><br>
>> ><br>
>><br>
>><br>
>><br>
>> --<br>
>> Yuvi Panda T<br>
>> <a href="http://yuvi.in/blog" rel="noreferrer" target="_blank">http://yuvi.in/blog</a><br>
>><br>
>> _______________________________________________<br>
>> Labs-l mailing list<br>
>> <a href="mailto:Labs-l@lists.wikimedia.org" target="_blank">Labs-l@lists.wikimedia.org</a><br>
>> <a href="https://lists.wikimedia.org/mailman/listinfo/labs-l" rel="noreferrer" target="_blank">https://lists.wikimedia.org/mailman/listinfo/labs-l</a><br>
<br>
<br>
<br>
--<br>
Yuvi Panda T<br>
<a href="http://yuvi.in/blog" rel="noreferrer" target="_blank">http://yuvi.in/blog</a><br>
</blockquote></div>