question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Help for debugging "HerokuStartupError: Failed to start for unknown reason": 5pts

See original GitHub issue

Certain kinds of Dallinger errors take the form of HerokuStartupError: Failed to start for unknown reason, and are difficult to debug because they provide no traceback. Example:

Traceback (most recent call last):
  File "/home/frank/.virtualenvs/dlgr_env/bin/dallinger", line 33, in <module>
    sys.exit(load_entry_point('dallinger', 'console_scripts', 'dallinger')())
  File "/home/frank/.virtualenvs/dlgr_env/lib/python3.8/site-packages/click/core.py", line 722, in __call__
    return self.main(*args, **kwargs)
  File "/home/frank/.virtualenvs/dlgr_env/lib/python3.8/site-packages/click/core.py", line 697, in main
    rv = self.invoke(ctx)
  File "/home/frank/.virtualenvs/dlgr_env/lib/python3.8/site-packages/click/core.py", line 1066, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/frank/.virtualenvs/dlgr_env/lib/python3.8/site-packages/click/core.py", line 895, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/frank/.virtualenvs/dlgr_env/lib/python3.8/site-packages/click/core.py", line 535, in invoke
    return callback(*args, **kwargs)
  File "/home/frank/projects/Dallinger/dallinger/command_line.py", line 346, in wrapper
    return f(**kwargs)
  File "/home/frank/projects/Dallinger/dallinger/command_line.py", line 436, in debug
    debugger.run()
  File "/home/frank/projects/Dallinger/dallinger/deployment.py", line 598, in run
    with HerokuLocalWrapper(
  File "/home/frank/projects/Dallinger/dallinger/heroku/tools.py", line 529, in __enter__
    self.start()
  File "/home/frank/projects/Dallinger/dallinger/heroku/tools.py", line 421, in start
    raise HerokuStartupError(
dallinger.heroku.tools.HerokuStartupError: Failed to start for unknown reason: [
"5:35:56 PM worker.1 |  2021-01-19 17:35:56,763 RQ GEVENT worker (Greenlet pool size=20) 'rq:worker:6222fd7846eb4efb8d77dcccaa8e55f9' started, version 1.0\n", 
"5:35:57 PM web.1    |  /home/frank/.virtualenvs/dlgr_env/lib/python3.8/site-packages/sqlalchemy/orm/mapper.py:1092: SAWarning: Reassigning polymorphic association for identity 'participant' from <Mapper at 0x7f1ecd737280; Participant> to <Mapper at 0x7f1e9b81fbe0; Participant>: Check for duplicate use of 'participant' as value for polymorphic_identity.\n", '5:35:57 PM web.1    |    util.warn(\n', 
"5:35:57 PM web.1    |  /home/frank/.virtualenvs/dlgr_env/lib/python3.8/site-packages/sqlalchemy/orm/mapper.py:1092: SAWarning: Reassigning polymorphic association for identity 'custom_network' from <Mapper at 0x7f1e900b7b20; CustomNetwork> to <Mapper at 0x7f1e9006ce80; CustomNetwork>: Check for duplicate use of 'custom_network' as value for polymorphic_identity.\n", 
'5:35:57 PM web.1    |    util.warn(\n', 
"5:35:57 PM web.1    |  /home/frank/.virtualenvs/dlgr_env/lib/python3.8/site-packages/sqlalchemy/orm/mapper.py:1092: SAWarning: Reassigning polymorphic association for identity 'custom_trial' from <Mapper at 0x7f1e900b7a30; CustomTrial> to <Mapper at 0x7f1e90078190; CustomTrial>: Check for duplicate use of 'custom_trial' as value for polymorphic_identity.\n", 
'5:35:57 PM web.1    |    util.warn(\n', 
"5:35:57 PM web.1    |  /home/frank/.virtualenvs/dlgr_env/lib/python3.8/site-packages/sqlalchemy/orm/mapper.py:1092: SAWarning: Reassigning polymorphic association for identity 'custom_node' from <Mapper at 0x7f1e900b7ee0; CustomNode> to <Mapper at 0x7f1e900782e0; CustomNode>: Check for duplicate use of 'custom_node' as value for polymorphic_identity.\n", 
'5:35:57 PM web.1    |    util.warn(\n', "5:35:57 PM web.1    |  /home/frank/.virtualenvs/dlgr_env/lib/python3.8/site-packages/sqlalchemy/orm/mapper.py:1092: SAWarning: Reassigning polymorphic association for identity 'custom_source' from <Mapper at 0x7f1e900d6160; CustomSource> to <Mapper at 0x7f1e900786a0; CustomSource>: Check for duplicate use of 'custom_source' as value for polymorphic_identity.\n", 
'5:35:57 PM web.1    |    util.warn(\n',
'5:35:57 PM web.1    |  [2021-01-19 17:35:57 +0100] [793381] [DEBUG] Current configuration:\n',
'5:35:57 PM web.1    |    config: None\n',
"5:35:57 PM web.1    |    bind: ['0.0.0.0:5000']\n", 
'5:35:57 PM web.1    |    backlog: 2048\n',
'5:35:57 PM web.1    |    workers: 13\n', 
'5:35:57 PM web.1    |    worker_class: geventwebsocket.gunicorn.workers.GeventWebSocketWorker\n',
'5:35:57 PM web.1    |    threads: 1\n',
'5:35:57 PM web.1    |    worker_connections: 1000\n',
'5:35:57 PM web.1    |    max_requests: 0\n',
'5:35:57 PM web.1    |    max_requests_jitter: 0\n',
'5:35:57 PM web.1    |    timeout: 30\n',
'5:35:57 PM web.1    |    graceful_timeout: 30\n', 
'5:35:57 PM web.1    |    keepalive: 2\n', 
'5:35:57 PM web.1    |    limit_request_line: 0\n',
'5:35:57 PM web.1    |    limit_request_fields: 100\n',
'5:35:57 PM web.1    |    limit_request_field_size: 8190\n',
'5:35:57 PM web.1    |    reload: False\n',
'5:35:57 PM web.1    |    reload_engine: auto\n', 
'5:35:57 PM web.1    |    reload_extra_files: []\n', 
'5:35:57 PM web.1    |    spew: False\n',
'5:35:57 PM web.1    |    check_config: False\n', 
'5:35:57 PM web.1    |    preload_app: False\n', 
'5:35:57 PM web.1    |    sendfile: None\n', 
'5:35:57 PM web.1    |    reuse_port: False\n', 
'5:35:57 PM web.1    |    chdir: /tmp/tmpikvu_5lw/49b8d1eb-488a-375e-d8a3-3ae0abee20be\n', 
'5:35:57 PM web.1    |    daemon: False\n', 
'5:35:57 PM web.1    |    raw_env: []\n', 
'5:35:57 PM web.1    |    pidfile: None\n', 
'5:35:57 PM web.1    |    worker_tmp_dir: None\n', 
'5:35:57 PM web.1    |    user: 1000\n', 
'5:35:57 PM web.1    |    group: 1000\n', 
'5:35:57 PM web.1    |    umask: 0\n', 
'5:35:57 PM web.1    |    initgroups: False\n', 
'5:35:57 PM web.1    |    tmp_upload_dir: None\n', 
"5:35:57 PM web.1    |    secure_scheme_headers: {'X-FORWARDED-PROTOCOL': 'ssl', 'X-FORWARDED-PROTO': 'https', 'X-FORWARDED-SSL': 'on'}\n", 
"5:35:57 PM web.1    |    forwarded_allow_ips: ['127.0.0.1']\n", 
'5:35:57 PM web.1    |    accesslog: -\n', 
'5:35:57 PM web.1    |    disable_redirect_access_to_syslog: False\n',
'5:35:57 PM web.1    |    access_log_format: %(h)s %(l)s %(u)s %(t)s "%(r)s" %(s)s %(b)s "%(f)s" "%(a)s"\n',
'5:35:57 PM web.1    |    errorlog: -\n',
'5:35:57 PM web.1    |    loglevel: debug\n',
'5:35:57 PM web.1    |    capture_output: False\n',
'5:35:57 PM web.1    |    logger_class: gunicorn.glogging.Logger\n',
'5:35:57 PM web.1    |    logconfig: None\n', 
'5:35:57 PM web.1    |    logconfig_dict: {}\n',
'5:35:57 PM web.1    |    syslog_addr: udp://localhost:514\n',
'5:35:57 PM web.1    |    syslog: False\n', 
'5:35:57 PM web.1    |    syslog_prefix: None\n',
'5:35:57 PM web.1    |    syslog_facility: user\n', 
'5:35:57 PM web.1    |    enable_stdio_inheritance: False\n',
'5:35:57 PM web.1    |    statsd_host: None\n',
'5:35:57 PM web.1    |    statsd_prefix: \n', 
'5:35:57 PM web.1    |    proc_name: dallinger_experiment_server\n', 
'5:35:57 PM web.1    |    default_proc_name: gunicorn\n', 
'5:35:57 PM web.1    |    pythonpath: None\n',
'5:35:57 PM web.1    |    paste: None\n',
'5:35:57 PM web.1    |    on_starting: <function OnStarting.on_starting at 0x7f1e9ba2c280>\n',
'5:35:57 PM web.1    |    on_reload: <function OnReload.on_reload at 0x7f1e9ba2c3a0>\n', 
'5:35:57 PM web.1    |    when_ready: <function when_ready at 0x7f1ecf76f670>\n', 
'5:35:57 PM web.1    |    pre_fork: <function Prefork.pre_fork at 0x7f1e9ba2c5e0>\n', 
'5:35:57 PM web.1    |    post_fork: <function Postfork.post_fork at 0x7f1e9ba2c700>\n',
'5:35:57 PM web.1    |    post_worker_init: <function PostWorkerInit.post_worker_init at 0x7f1e9ba2c820>\n',
'5:35:57 PM web.1    |    worker_int: <function WorkerInt.worker_int at 0x7f1e9ba2c940>\n', 
'5:35:57 PM web.1    |    worker_abort: <function WorkerAbort.worker_abort at 0x7f1e9ba2ca60>\n', 
'5:35:57 PM web.1    |    pre_exec: <function PreExec.pre_exec at 0x7f1e9ba2cb80>',
'5:35:57 PM web.1    |    pre_request: <function PreRequest.pre_request at 0x7f1e9ba2cca0>',
'5:35:57 PM web.1    |    post_request: <function PostRequest.post_request at 0x7f1e9ba2cd30>\n', 
'5:35:57 PM web.1    |    child_exit: <function ChildExit.child_exit at 0x7f1e9ba2ce50>',
'5:35:57 PM web.1    |    worker_exit: <function WorkerExit.worker_exit at 0x7f1e9ba2cf70>',
'5:35:57 PM web.1    |    nworkers_changed: <function NumWorkersChanged.nworkers_changed at 0x7f1e9ba410d0>\n', '5:35:57 PM web.1    |    on_exit: <function OnExit.on_exit at 0x7f1e9ba411f0>\n', 
'5:35:57 PM web.1    |    proxy_protocol: False',
"5:35:57 PM web.1    |    proxy_allow_ips: ['127.0.0.1']",
'5:35:57 PM web.1    |    keyfile: None\n', 
'5:35:57 PM web.1    |    certfile: None\n', 
'5:35:57 PM web.1    |    ssl_version: 2',
'5:35:57 PM web.1    |    cert_reqs: 0\n', 
'5:35:57 PM web.1    |    ca_certs: None\n', 
'5:35:57 PM web.1    |    suppress_ragged_eofs: True',
'5:35:57 PM web.1    |    do_handshake_on_connect: False\n', 
'5:35:57 PM web.1    |    ciphers: TLSv1\n',
'5:35:57 PM web.1    |    raw_paste_global_conf: []\n',
'5:35:57 PM web.1    |  [2021-01-19 17:35:57 +0100] [793381] [INFO] Starting gunicorn 19.9.0\n',
'5:35:57 PM web.1    |  [2021-01-19 17:35:57 +0100] [793381] [DEBUG] Arbiter booted\n',
'5:35:57 PM web.1    |  [2021-01-19 17:35:57 +0100] [793381] [INFO] Listening at: http://0.0.0.0:5000 (793381)\n',
'5:35:57 PM web.1    |  [2021-01-19 17:35:57 +0100] [793381] [INFO] Using worker: geventwebsocket.gunicorn.workers.GeventWebSocketWorker\n',
'5:35:57 PM web.1    |  WARNING:/home/frank/projects/Dallinger/dallinger/experiment_server/gunicorn.py:Ready.\n',
"5:35:57 PM web.1    |  /usr/lib/python3.8/os.py:1023: RuntimeWarning: line buffering (buffering=1) isn't supported in binary mode, the default buffer size will be used\n", 
'5:35:57 PM web.1    |    return io.open(fd, *args, **kwargs)\n', 
'5:35:57 PM web.1    |  [2021-01-19 17:35:57 +0100] [793418] [INFO] Booting worker with pid: 793418\n',
'5:35:57 PM web.1    |  [2021-01-19 17:35:57 +0100] [793418] [ERROR] Exception in worker process\n']

The proposal of this issue is to facilitate debugging such messages. @alecpm gave some nice insight here:

Generally what I do in this case is look in the output for the temp directory created for the experiment. You should be able to cd into that directory and run dallinger_heroku_web or dallinger_heroku_worker if that’s the process that’s failing. Those will generally give you good tracebacks and point you to the actual cause. You will need to make sure the shell you are using in the tmp directory has the same python you used to run Dallinger, and you’ll probably also need to explicitly do “export PORT=5000” before running those commands.

One approach would just be to put this information in the Dallinger documentation. A more exciting possibility would be to add a better wrapper for catching/debugging these messages. It seems like it shouldn’t be too hard to wrap the app launch call in a try except and log any errors before reraising, but the developers must have considered this already? Still, I hope we could find a way of facilitating this debugging because otherwise the errors are quite hard to identify.

Issue Analytics

  • State:closed
  • Created 3 years ago
  • Comments:5 (2 by maintainers)

github_iconTop GitHub Comments

1reaction
pmcharrisoncommented, Jun 16, 2021

Hi @alecpm, apologies for this, it must have been frustrating to try and debug this without a reproducible example!

I am not entirely sure on the best way to reproduce these errors. The last time I saw it, it was an older version of Dallinger, potentially linked to some route registration problems we had earlier.

Here’s one way to get the error:

  • checkout Dallinger issues/2432-extra-params
  • checkout PsyNet v.1.10.0 (here’s the repository)
  • navigate to the timeline demo cd demos/timeline
  • run dallinger debug --verbose

You get an error like this:

8:31:03 AM web.1    |  [2021-06-16 08:31:03 +0100] [65855] [INFO] Booting worker with pid: 65855
8:31:03 AM web.1    |  [2021-06-16 08:31:03 +0100] [65856] [INFO] Booting worker with pid: 65856
8:31:03 AM web.1    |  [2021-06-16 08:31:03 +0100] [65855] [ERROR] Exception in worker process

❯❯ Cleaning up local Heroku process...

❯❯ Local Heroku process terminated.
Traceback (most recent call last):
  File "/Users/peter.harrison/.virtualenvs/psynet/bin/dallinger", line 11, in <module>
    load_entry_point('dallinger', 'console_scripts', 'dallinger')()
  File "/Users/peter.harrison/.virtualenvs/psynet/lib/python3.9/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/Users/peter.harrison/.virtualenvs/psynet/lib/python3.9/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/Users/peter.harrison/.virtualenvs/psynet/lib/python3.9/site-packages/click/core.py", line 1259, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/Users/peter.harrison/.virtualenvs/psynet/lib/python3.9/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/Users/peter.harrison/.virtualenvs/psynet/lib/python3.9/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/Users/peter.harrison/gdrive/academic/projects/harrison-peter/Dallinger/dallinger/command_line.py", line 346, in wrapper
    return f(**kwargs)
  File "/Users/peter.harrison/gdrive/academic/projects/harrison-peter/Dallinger/dallinger/command_line.py", line 436, in debug
    debugger.run()
  File "/Users/peter.harrison/gdrive/academic/projects/harrison-peter/Dallinger/dallinger/deployment.py", line 595, in run
    with HerokuLocalWrapper(
  File "/Users/peter.harrison/gdrive/academic/projects/harrison-peter/Dallinger/dallinger/heroku/tools.py", line 527, in __enter__
    self.start()
  File "/Users/peter.harrison/gdrive/academic/projects/harrison-peter/Dallinger/dallinger/heroku/tools.py", line 421, in start
    raise HerokuStartupError(
dallinger.heroku.tools.HerokuStartupError: Failed to start for unknown reason: ["8:31:03 AM worker.1 |  2021-06-16 08:31:03,250 RQ GEVENT worker (Greenlet pool size=20) 'rq:worker:138e5bf817c94c31ba9f1bae63f1bf0f' started, version 1.8.1\n", "8:31:03 AM web.1    |  /Users/peter.harrison/gdrive/academic/projects/jacoby-nori/psynet/psynet/participant.py:20: SAWarning: Reassigning polymorphic association for identity 'participant' from <Mapper at 0x7fbff049e460; Participant> to <Mapper at 0x7fc001212130; Participant>: Check for duplicate use of 'participant' as value for polymorphic_identity.\n", '8:31:03 AM web.1    |    class Participant(dallinger.models.Participant):\n', '8:31:03 AM web.1    |  [2021-06-16 08:31:03 +0100] [65853] [DEBUG] Current configuration:\n', '8:31:03 AM web.1    |    config: ./gunicorn.conf.py\n', '8:31:03 AM web.1    |    wsgi_app: None\n', "8:31:03 AM web.1    |    bind: ['0.0.0.0:5000']\n", '8:31:03 AM web.1    |    backlog: 2048\n', '8:31:03 AM web.1    |    workers: 25\n', '8:31:03 AM web.1    |    worker_class: geventwebsocket.gunicorn.workers.GeventWebSocketWorker\n', '8:31:03 AM web.1    |    threads: 1\n', '8:31:03 AM web.1    |    worker_connections: 1000\n', '8:31:03 AM web.1    |    max_requests: 0\n', '8:31:03 AM web.1    |    max_requests_jitter: 0\n', '8:31:03 AM web.1    |    timeout: 30\n', '8:31:03 AM web.1    |    graceful_timeout: 30\n', '8:31:03 AM web.1    |    keepalive: 2\n', '8:31:03 AM web.1    |    limit_request_line: 0\n', '8:31:03 AM web.1    |    limit_request_fields: 100\n', '8:31:03 AM web.1    |    limit_request_field_size: 8190\n', '8:31:03 AM web.1    |    reload: False\n', '8:31:03 AM web.1    |    reload_engine: auto\n', '8:31:03 AM web.1    |    reload_extra_files: []\n', '8:31:03 AM web.1    |    spew: False\n', '8:31:03 AM web.1    |    check_config: False\n', '8:31:03 AM web.1    |    print_config: False\n', '8:31:03 AM web.1    |    preload_app: False\n', '8:31:03 AM web.1    |    sendfile: None\n', '8:31:03 AM web.1    |    reuse_port: False\n', '8:31:03 AM web.1    |    chdir: /private/var/folders/tn/64ntcs3564n4c8wbxtf44p300000gq/T/tmpmgcz6xq1/020f047f-92a3-e9ef-a605-e259d2be6ce0\n', '8:31:03 AM web.1    |    daemon: False\n', '8:31:03 AM web.1    |    raw_env: []\n', '8:31:03 AM web.1    |    pidfile: None\n', '8:31:03 AM web.1    |    worker_tmp_dir: None\n', '8:31:03 AM web.1    |    user: 503\n', '8:31:03 AM web.1    |    group: 20\n', '8:31:03 AM web.1    |    umask: 0\n', '8:31:03 AM web.1    |    initgroups: False\n', '8:31:03 AM web.1    |    tmp_upload_dir: None\n', "8:31:03 AM web.1    |    secure_scheme_headers: {'X-FORWARDED-PROTOCOL': 'ssl', 'X-FORWARDED-PROTO': 'https', 'X-FORWARDED-SSL': 'on'}\n", "8:31:03 AM web.1    |    forwarded_allow_ips: ['127.0.0.1']\n", '8:31:03 AM web.1    |    accesslog: -\n', '8:31:03 AM web.1    |    disable_redirect_access_to_syslog: False\n', '8:31:03 AM web.1    |    access_log_format: %(h)s %(l)s %(u)s %(t)s "%(r)s" %(s)s %(b)s "%(f)s" "%(a)s"\n', '8:31:03 AM web.1    |    errorlog: -\n', '8:31:03 AM web.1    |    loglevel: debug\n', '8:31:03 AM web.1    |    capture_output: False\n', '8:31:03 AM web.1    |    logger_class: gunicorn.glogging.Logger\n', '8:31:03 AM web.1    |    logconfig: None\n', '8:31:03 AM web.1    |    logconfig_dict: {}\n', '8:31:03 AM web.1    |    syslog_addr: unix:///var/run/syslog\n', '8:31:03 AM web.1    |    syslog: False\n', '8:31:03 AM web.1    |    syslog_prefix: None\n', '8:31:03 AM web.1    |    syslog_facility: user\n', '8:31:03 AM web.1    |    enable_stdio_inheritance: False\n', '8:31:03 AM web.1    |    statsd_host: None\n', '8:31:03 AM web.1    |    dogstatsd_tags: \n', '8:31:03 AM web.1    |    statsd_prefix: \n', '8:31:03 AM web.1    |    proc_name: dallinger_experiment_server\n', '8:31:03 AM web.1    |    default_proc_name: gunicorn\n', '8:31:03 AM web.1    |    pythonpath: None\n', '8:31:03 AM web.1    |    paste: None\n', '8:31:03 AM web.1    |    on_starting: <function OnStarting.on_starting at 0x7fc0085539d0>\n', '8:31:03 AM web.1    |    on_reload: <function OnReload.on_reload at 0x7fc008553af0>\n', '8:31:03 AM web.1    |    when_ready: <function when_ready at 0x7fc00031dee0>\n', '8:31:03 AM web.1    |    pre_fork: <function Prefork.pre_fork at 0x7fc008553d30>\n', '8:31:03 AM web.1    |    post_fork: <function Postfork.post_fork at 0x7fc008553e50>\n', '8:31:03 AM web.1    |    post_worker_init: <function PostWorkerInit.post_worker_init at 0x7fc008553f70>\n', '8:31:03 AM web.1    |    worker_int: <function WorkerInt.worker_int at 0x7fc00856d0d0>\n', '8:31:03 AM web.1    |    worker_abort: <function WorkerAbort.worker_abort at 0x7fc00856d1f0>\n', '8:31:03 AM web.1    |    pre_exec: <function PreExec.pre_exec at 0x7fc00856d310>\n', '8:31:03 AM web.1    |    pre_request: <function PreRequest.pre_request at 0x7fc00856d430>\n', '8:31:03 AM web.1    |    post_request: <function PostRequest.post_request at 0x7fc00856d4c0>\n', '8:31:03 AM web.1    |    child_exit: <function ChildExit.child_exit at 0x7fc00856d5e0>\n', '8:31:03 AM web.1    |    worker_exit: <function WorkerExit.worker_exit at 0x7fc00856d700>\n', '8:31:03 AM web.1    |    nworkers_changed: <function NumWorkersChanged.nworkers_changed at 0x7fc00856d820>\n', '8:31:03 AM web.1    |    on_exit: <function OnExit.on_exit at 0x7fc00856d940>\n', '8:31:03 AM web.1    |    proxy_protocol: False\n', "8:31:03 AM web.1    |    proxy_allow_ips: ['127.0.0.1']\n", '8:31:03 AM web.1    |    keyfile: None\n', '8:31:03 AM web.1    |    certfile: None\n', '8:31:03 AM web.1    |    ssl_version: 2\n', '8:31:03 AM web.1    |    cert_reqs: 0\n', '8:31:03 AM web.1    |    ca_certs: None\n', '8:31:03 AM web.1    |    suppress_ragged_eofs: True\n', '8:31:03 AM web.1    |    do_handshake_on_connect: False\n', '8:31:03 AM web.1    |    ciphers: None\n', '8:31:03 AM web.1    |    raw_paste_global_conf: []\n', '8:31:03 AM web.1    |    strip_header_spaces: False\n', '8:31:03 AM web.1    |  [2021-06-16 08:31:03 +0100] [65853] [INFO] Starting gunicorn 20.1.0\n', '8:31:03 AM web.1    |  [2021-06-16 08:31:03 +0100] [65853] [DEBUG] Arbiter booted\n', '8:31:03 AM web.1    |  [2021-06-16 08:31:03 +0100] [65853] [INFO] Listening at: http://0.0.0.0:5000 (65853)\n', '8:31:03 AM web.1    |  [2021-06-16 08:31:03 +0100] [65853] [INFO] Using worker: geventwebsocket.gunicorn.workers.GeventWebSocketWorker\n', '8:31:03 AM web.1    |  WARNING:/Users/peter.harrison/gdrive/academic/projects/harrison-peter/Dallinger/dallinger/experiment_server/gunicorn.py:Ready.\n', '8:31:03 AM web.1    |  [2021-06-16 08:31:03 +0100] [65855] [INFO] Booting worker with pid: 65855\n', '8:31:03 AM web.1    |  [2021-06-16 08:31:03 +0100] [65856] [INFO] Booting worker with pid: 65856\n', '8:31:03 AM web.1    |  [2021-06-16 08:31:03 +0100] [65855] [ERROR] Exception in worker process\n']
0reactions
pmcharrisoncommented, Jun 16, 2021

That sounds like some masterful debugging! Thank you!

Read more comments on GitHub >

github_iconTop Results From Across the Web

Error: Unable to Start Debugging on the Web Server
The debugger cannot connect to the remote computer; See help for common configuration errors. Running the webpage outside of the debugger may ...
Read more >
Xcode: Could not attach to pid | Apple Developer Forums
I have tried all solutions mentioned in this thread but to no avail. I am able to to atttach it after edit Scheme...
Read more >
IIS error, Unable to start debugging on the webserver
There may be many reasons for the above problem. You need to check this:- Unable to Start Debugging on the Web Server.
Read more >
vscode-java-debug/Troubleshooting.md at main - GitHub
Cause of error is for now unknown, but something caused vscode java support and debugger to not be configured correctly. Try: Restart VS...
Read more >
Debugging in Visual Studio Code
One of the great things in Visual Studio Code is debugging support. ... yet configured (no launch.json has been created), VS Code shows...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found