如何通过 django crontab 将调试器挂接到 python 代码 运行?

How to hook a debugger to a python code running via django crontab?

我有一个基于 Django 的 Web 应用程序,该应用程序的某些功能计划 运行 作为使用 django-crontab 的 cron 作业的一部分。我想挂接一个调试器,以便我可以检查我的代码的一些奇怪行为。我通常使用 visual studio 代码。是否可以挂钩调试器,因为 cron 作业基本上 运行 独立于服务器?

您可以使用 pdb or ipdb 在代码中放置断点调试器。像这样:

def some_function():
    # some code
    import pdb;pdb.set_trace()  # or use ipdb
    # rest of the code

然后在 shell、运行 python manage.py crontab show 中显示带有 ids 的 cronjobs,然后 运行 python manage.py crontab run <id> .它会击中调试器,然后你就会击中断点。因此你可以在这里使用调试器。