首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Django:使用web视图进行检查

Django:使用web视图进行检查
EN

Stack Overflow用户
提问于 2019-06-12 09:19:04
回答 2查看 1.7K关注 0票数 0

我读了检查文档:https://docs.djangoproject.com/en/2.2/topics/checks/

我错过了一些东西:我想有一个网络视图,管理员可以看到什么是错误的。

调用此视图应该执行检查,结果(确定或失败消息)应该是可见的。

我自己也能破解类似的东西。

但是,如果已经有这样的道路,我想走一条共同的道路。

与单元测试相反,这是关于检查生产服务器的。

如何才能做到这点呢?

我想到的检查示例:检查第三方服务是否可用(smtp服务器、归档系统、ERP系统、.)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-06-17 15:33:09

实际上,内置系统检查主要用于开发--关键是,如果这些测试失败,您的项目很可能根本不运行。

但是,您仍然可以使用management.call_command从python代码调用这个(或任何其他)管理命令--您只需要提供一个可写的类似文件的对象来捕获stdout/stderr:

代码语言:javascript
复制
from StringIO import StringIO
from django.core.management import call_command, check

def check_view(request):
    out = StringIO()
    cmd = check.Command(stdout=out, stderr=out)
    call_command(check)
    out.seek(0)
    context = {"results": out.readlines()}
    return render(request, "check.html", context) 

然后,这只是一个插入到您的管理(这是文档,所以我不会给出一个完整的例子)的问题。

注意: wrt/将您自己的检查添加到check命令这也是完整的文档。中。

票数 2
EN

Stack Overflow用户

发布于 2019-06-17 14:38:56

云平台提供商经常提供健康检查,以便在特定的点(例如: /health )检查应用程序。

django-健康检查提供了可以在访问/health时执行的测试。

如果他们都通过了,它会返回一个200。否则云提供商将通知您的管理员。

当然,您可以使该页面仅供管理员手动检查或编写您自己的脚本来监视您的应用程序状态。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56558703

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档