How to set Debug mode in Tornado?Tornado Startup ManagementScalability problem (Tornado). Can't figure it out, holding up launchnginx as proxy to tornado: 301 redirectNginx Tornado Combination Causing 502 Bad Gateway Errorscan I use Tornado without any proxy?Uninstall Tornado Web Server?How can I serve static files with nginx but use a slightly different url for tornado?Supervisord, Flask, Tornado (exit status 1; not expected)How to redirect nginx to tornado backend running httpsTornado server on port 80/443, any issues?

How did the Vostok ejection seat safely eject an astronaut from a sealed space capsule?

Can i enter UK for 24 hours from a Schengen area holding an Indian passport?

What happened to Hopper's girlfriend in season one?

Is "Busen" just the area between the breasts?

Print one file per line using echo

How to work with PETG? Settings, caveats, etc

What is the meaning of "понаехать"?

Rejecting an offer after accepting it just 10 days from date of joining

Subtract the Folded Matrix

When Bnei Yisroel travelled in the midbar, what happened on Shabbos?

I found a password with hashcat, but it doesn't work

Why does Linux list NVMe drives as /dev/nvme0 instead of /dev/sda?

What constitutes a syllable?

How many people are necessary to maintain modern civilisation?

Explicit song lyrics checker

What is the highest voltage from the power supply a Raspberry Pi 3 B can handle without getting damaged?

Are there examples of rowers who also fought?

Prisoner on alien planet escapes by making up a story about ghost companions and wins the war

Boss wants someone else to lead a project based on the idea I presented to him

What does this Swiss black on yellow rectangular traffic sign with a symbol looking like a dart mean?

Improve appearance of the table in Latex

Dates on degrees don’t make sense – will people care?

Exact functors and derived functors

What are Elsa's reasons for selecting the Holy Grail on behalf of Donovan?



How to set Debug mode in Tornado?


Tornado Startup ManagementScalability problem (Tornado). Can't figure it out, holding up launchnginx as proxy to tornado: 301 redirectNginx Tornado Combination Causing 502 Bad Gateway Errorscan I use Tornado without any proxy?Uninstall Tornado Web Server?How can I serve static files with nginx but use a slightly different url for tornado?Supervisord, Flask, Tornado (exit status 1; not expected)How to redirect nginx to tornado backend running httpsTornado server on port 80/443, any issues?






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;








13















I googled and found a hint that I should set debug mode in Tornado so that it could reload files automatically on update. But I didn't find an exact string to insert. I tried different combinations similar to this application.settings = "Debug": True but it doesn't help.










share|improve this question






















  • i think it should be "debug":True

    – jondinham
    Mar 2 '12 at 5:52

















13















I googled and found a hint that I should set debug mode in Tornado so that it could reload files automatically on update. But I didn't find an exact string to insert. I tried different combinations similar to this application.settings = "Debug": True but it doesn't help.










share|improve this question






















  • i think it should be "debug":True

    – jondinham
    Mar 2 '12 at 5:52













13












13








13








I googled and found a hint that I should set debug mode in Tornado so that it could reload files automatically on update. But I didn't find an exact string to insert. I tried different combinations similar to this application.settings = "Debug": True but it doesn't help.










share|improve this question














I googled and found a hint that I should set debug mode in Tornado so that it could reload files automatically on update. But I didn't find an exact string to insert. I tried different combinations similar to this application.settings = "Debug": True but it doesn't help.







tornado






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked May 26 '11 at 11:09









Sergei BasharovSergei Basharov

2041311




2041311












  • i think it should be "debug":True

    – jondinham
    Mar 2 '12 at 5:52

















  • i think it should be "debug":True

    – jondinham
    Mar 2 '12 at 5:52
















i think it should be "debug":True

– jondinham
Mar 2 '12 at 5:52





i think it should be "debug":True

– jondinham
Mar 2 '12 at 5:52










2 Answers
2






active

oldest

votes


















11














Here's a tweaked example from the tornado site:



if __name__ == "__main__":
application = tornado.web.Application([
(r"/", MainHandler)
], debug=True)
application.listen(8888)
tornado.ioloop.IOLoop.instance().start()





share|improve this answer




















  • 2





    "debug=True" has to be outside of the list of handlers for it to work---like this: "...],debug=True)"

    – Hemm
    Apr 17 '12 at 4:18












  • Good catch, I had written it without checking it. Updated my answer accordingly.

    – Jon Haddad
    May 1 '12 at 20:01


















0














For those who like the debug=True option and using Tornado-multiprocess the following error will be raised:



Traceback (most recent call last):
File "./main.py", line 54, in <module>
server.start(0) # forks one process per cpu
File "/Users/me/Library/Python/2.7/lib/python/site-packages/tornado/tcpserver.py", line 221, in start
process.fork_processes(num_processes)
File "/Users/me/Library/Python/2.7/lib/python/site-packages/tornado/process.py", line 130, in fork_processes
raise RuntimeError("Cannot run in multiple processes: IOLoop instance "
RuntimeError: Cannot run in multiple processes: IOLoop instance has already been initialized. You cannot call IOLoop.instance() before calling start_processes()


This is because debug=True load IOLoop and it cannot be loaded twice.



According to the documentation




Setting debug=True is equivalent to autoreload=True,
compiled_template_cache=False, static_hash_cache=False,
serve_traceback=True.




So when using debug=True Tornado also sets ( for convenience ) another flag: autoreload=True which "watch" for changes and reload the server.



The autoreload option is the one that cannot be turned on when using multi-process.
So you need to configure it like so:



if __name__ == "__main__":
application = tornado.web.Application([
(r"/", MainHandler)
], debug=True, autoreload=False)
application.listen(8888)
tornado.ioloop.IOLoop.instance().start()





share|improve this answer























    Your Answer








    StackExchange.ready(function()
    var channelOptions =
    tags: "".split(" "),
    id: "2"
    ;
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function()
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled)
    StackExchange.using("snippets", function()
    createEditor();
    );

    else
    createEditor();

    );

    function createEditor()
    StackExchange.prepareEditor(
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader:
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    ,
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    );



    );













    draft saved

    draft discarded


















    StackExchange.ready(
    function ()
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fserverfault.com%2fquestions%2f274014%2fhow-to-set-debug-mode-in-tornado%23new-answer', 'question_page');

    );

    Post as a guest















    Required, but never shown

























    2 Answers
    2






    active

    oldest

    votes








    2 Answers
    2






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    11














    Here's a tweaked example from the tornado site:



    if __name__ == "__main__":
    application = tornado.web.Application([
    (r"/", MainHandler)
    ], debug=True)
    application.listen(8888)
    tornado.ioloop.IOLoop.instance().start()





    share|improve this answer




















    • 2





      "debug=True" has to be outside of the list of handlers for it to work---like this: "...],debug=True)"

      – Hemm
      Apr 17 '12 at 4:18












    • Good catch, I had written it without checking it. Updated my answer accordingly.

      – Jon Haddad
      May 1 '12 at 20:01















    11














    Here's a tweaked example from the tornado site:



    if __name__ == "__main__":
    application = tornado.web.Application([
    (r"/", MainHandler)
    ], debug=True)
    application.listen(8888)
    tornado.ioloop.IOLoop.instance().start()





    share|improve this answer




















    • 2





      "debug=True" has to be outside of the list of handlers for it to work---like this: "...],debug=True)"

      – Hemm
      Apr 17 '12 at 4:18












    • Good catch, I had written it without checking it. Updated my answer accordingly.

      – Jon Haddad
      May 1 '12 at 20:01













    11












    11








    11







    Here's a tweaked example from the tornado site:



    if __name__ == "__main__":
    application = tornado.web.Application([
    (r"/", MainHandler)
    ], debug=True)
    application.listen(8888)
    tornado.ioloop.IOLoop.instance().start()





    share|improve this answer















    Here's a tweaked example from the tornado site:



    if __name__ == "__main__":
    application = tornado.web.Application([
    (r"/", MainHandler)
    ], debug=True)
    application.listen(8888)
    tornado.ioloop.IOLoop.instance().start()






    share|improve this answer














    share|improve this answer



    share|improve this answer








    edited May 1 '12 at 20:00

























    answered Apr 4 '12 at 22:06









    Jon HaddadJon Haddad

    90731119




    90731119







    • 2





      "debug=True" has to be outside of the list of handlers for it to work---like this: "...],debug=True)"

      – Hemm
      Apr 17 '12 at 4:18












    • Good catch, I had written it without checking it. Updated my answer accordingly.

      – Jon Haddad
      May 1 '12 at 20:01












    • 2





      "debug=True" has to be outside of the list of handlers for it to work---like this: "...],debug=True)"

      – Hemm
      Apr 17 '12 at 4:18












    • Good catch, I had written it without checking it. Updated my answer accordingly.

      – Jon Haddad
      May 1 '12 at 20:01







    2




    2





    "debug=True" has to be outside of the list of handlers for it to work---like this: "...],debug=True)"

    – Hemm
    Apr 17 '12 at 4:18






    "debug=True" has to be outside of the list of handlers for it to work---like this: "...],debug=True)"

    – Hemm
    Apr 17 '12 at 4:18














    Good catch, I had written it without checking it. Updated my answer accordingly.

    – Jon Haddad
    May 1 '12 at 20:01





    Good catch, I had written it without checking it. Updated my answer accordingly.

    – Jon Haddad
    May 1 '12 at 20:01













    0














    For those who like the debug=True option and using Tornado-multiprocess the following error will be raised:



    Traceback (most recent call last):
    File "./main.py", line 54, in <module>
    server.start(0) # forks one process per cpu
    File "/Users/me/Library/Python/2.7/lib/python/site-packages/tornado/tcpserver.py", line 221, in start
    process.fork_processes(num_processes)
    File "/Users/me/Library/Python/2.7/lib/python/site-packages/tornado/process.py", line 130, in fork_processes
    raise RuntimeError("Cannot run in multiple processes: IOLoop instance "
    RuntimeError: Cannot run in multiple processes: IOLoop instance has already been initialized. You cannot call IOLoop.instance() before calling start_processes()


    This is because debug=True load IOLoop and it cannot be loaded twice.



    According to the documentation




    Setting debug=True is equivalent to autoreload=True,
    compiled_template_cache=False, static_hash_cache=False,
    serve_traceback=True.




    So when using debug=True Tornado also sets ( for convenience ) another flag: autoreload=True which "watch" for changes and reload the server.



    The autoreload option is the one that cannot be turned on when using multi-process.
    So you need to configure it like so:



    if __name__ == "__main__":
    application = tornado.web.Application([
    (r"/", MainHandler)
    ], debug=True, autoreload=False)
    application.listen(8888)
    tornado.ioloop.IOLoop.instance().start()





    share|improve this answer



























      0














      For those who like the debug=True option and using Tornado-multiprocess the following error will be raised:



      Traceback (most recent call last):
      File "./main.py", line 54, in <module>
      server.start(0) # forks one process per cpu
      File "/Users/me/Library/Python/2.7/lib/python/site-packages/tornado/tcpserver.py", line 221, in start
      process.fork_processes(num_processes)
      File "/Users/me/Library/Python/2.7/lib/python/site-packages/tornado/process.py", line 130, in fork_processes
      raise RuntimeError("Cannot run in multiple processes: IOLoop instance "
      RuntimeError: Cannot run in multiple processes: IOLoop instance has already been initialized. You cannot call IOLoop.instance() before calling start_processes()


      This is because debug=True load IOLoop and it cannot be loaded twice.



      According to the documentation




      Setting debug=True is equivalent to autoreload=True,
      compiled_template_cache=False, static_hash_cache=False,
      serve_traceback=True.




      So when using debug=True Tornado also sets ( for convenience ) another flag: autoreload=True which "watch" for changes and reload the server.



      The autoreload option is the one that cannot be turned on when using multi-process.
      So you need to configure it like so:



      if __name__ == "__main__":
      application = tornado.web.Application([
      (r"/", MainHandler)
      ], debug=True, autoreload=False)
      application.listen(8888)
      tornado.ioloop.IOLoop.instance().start()





      share|improve this answer

























        0












        0








        0







        For those who like the debug=True option and using Tornado-multiprocess the following error will be raised:



        Traceback (most recent call last):
        File "./main.py", line 54, in <module>
        server.start(0) # forks one process per cpu
        File "/Users/me/Library/Python/2.7/lib/python/site-packages/tornado/tcpserver.py", line 221, in start
        process.fork_processes(num_processes)
        File "/Users/me/Library/Python/2.7/lib/python/site-packages/tornado/process.py", line 130, in fork_processes
        raise RuntimeError("Cannot run in multiple processes: IOLoop instance "
        RuntimeError: Cannot run in multiple processes: IOLoop instance has already been initialized. You cannot call IOLoop.instance() before calling start_processes()


        This is because debug=True load IOLoop and it cannot be loaded twice.



        According to the documentation




        Setting debug=True is equivalent to autoreload=True,
        compiled_template_cache=False, static_hash_cache=False,
        serve_traceback=True.




        So when using debug=True Tornado also sets ( for convenience ) another flag: autoreload=True which "watch" for changes and reload the server.



        The autoreload option is the one that cannot be turned on when using multi-process.
        So you need to configure it like so:



        if __name__ == "__main__":
        application = tornado.web.Application([
        (r"/", MainHandler)
        ], debug=True, autoreload=False)
        application.listen(8888)
        tornado.ioloop.IOLoop.instance().start()





        share|improve this answer













        For those who like the debug=True option and using Tornado-multiprocess the following error will be raised:



        Traceback (most recent call last):
        File "./main.py", line 54, in <module>
        server.start(0) # forks one process per cpu
        File "/Users/me/Library/Python/2.7/lib/python/site-packages/tornado/tcpserver.py", line 221, in start
        process.fork_processes(num_processes)
        File "/Users/me/Library/Python/2.7/lib/python/site-packages/tornado/process.py", line 130, in fork_processes
        raise RuntimeError("Cannot run in multiple processes: IOLoop instance "
        RuntimeError: Cannot run in multiple processes: IOLoop instance has already been initialized. You cannot call IOLoop.instance() before calling start_processes()


        This is because debug=True load IOLoop and it cannot be loaded twice.



        According to the documentation




        Setting debug=True is equivalent to autoreload=True,
        compiled_template_cache=False, static_hash_cache=False,
        serve_traceback=True.




        So when using debug=True Tornado also sets ( for convenience ) another flag: autoreload=True which "watch" for changes and reload the server.



        The autoreload option is the one that cannot be turned on when using multi-process.
        So you need to configure it like so:



        if __name__ == "__main__":
        application = tornado.web.Application([
        (r"/", MainHandler)
        ], debug=True, autoreload=False)
        application.listen(8888)
        tornado.ioloop.IOLoop.instance().start()






        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Jun 3 at 9:29









        Ricky LeviRicky Levi

        1285




        1285



























            draft saved

            draft discarded
















































            Thanks for contributing an answer to Server Fault!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid


            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.

            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fserverfault.com%2fquestions%2f274014%2fhow-to-set-debug-mode-in-tornado%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            Wikipedia:Vital articles Мазмуну Biography - Өмүр баян Philosophy and psychology - Философия жана психология Religion - Дин Social sciences - Коомдук илимдер Language and literature - Тил жана адабият Science - Илим Technology - Технология Arts and recreation - Искусство жана эс алуу History and geography - Тарых жана география Навигация менюсу

            Bruxelas-Capital Índice Historia | Composición | Situación lingüística | Clima | Cidades irmandadas | Notas | Véxase tamén | Menú de navegacióneO uso das linguas en Bruxelas e a situación do neerlandés"Rexión de Bruxelas Capital"o orixinalSitio da rexiónPáxina de Bruselas no sitio da Oficina de Promoción Turística de Valonia e BruxelasMapa Interactivo da Rexión de Bruxelas-CapitaleeWorldCat332144929079854441105155190212ID28008674080552-90000 0001 0666 3698n94104302ID540940339365017018237

            What should I write in an apology letter, since I have decided not to join a company after accepting an offer letterShould I keep looking after accepting a job offer?What should I do when I've been verbally told I would get an offer letter, but still haven't gotten one after 4 weeks?Do I accept an offer from a company that I am not likely to join?New job hasn't confirmed starting date and I want to give current employer as much notice as possibleHow should I address my manager in my resignation letter?HR delayed background verification, now jobless as resignedNo email communication after accepting a formal written offer. How should I phrase the call?What should I do if after receiving a verbal offer letter I am informed that my written job offer is put on hold due to some internal issues?Should I inform the current employer that I am about to resign within 1-2 weeks since I have signed the offer letter and waiting for visa?What company will do, if I send their offer letter to another company