kubernetes 如何在django中为特定的url禁用控制台日志?

iqjalb3h  于 2023-08-03  发布在  Kubernetes
关注(0)|答案(1)|浏览(70)

我的观点在下面

@api_view(['GET'])
def get_test(request):
    return HttpResponse('Ok', status.HTTP_200_OK)

字符串
而我在urls.py的urlpatterns中的路径如下。

path('api/test', views.get_test),


答:我之前没有问对问题。我每3秒在控制台中收到一次“[DEBUG] GET /API/test”,因为有活动探测,我需要禁用这个端点的控制台日志。

b1zrtrql

b1zrtrql1#

一种方法是使用该级别创建一个单独的日志记录器。在您的settings.py中:

LOGGING = {
    "version": 1,
    "disable_existing_loggers": False,
    "loggers": {
        "": {
            "level": "ERROR",
        },
        "critical_only": {
            "level": "CRITICAL",
        },
    },
}

字符串
然后,在您的仅限关键视图中,您可以使用该记录器,例如:

critical_only_logger = logging.getLogger("critical_only")
critical_only_logger.error("error")


上面的最后一行不会打印,正如预期的那样。对于另一个“普通”日志记录器,您可以在其他视图中执行通常的logger = logging.getLogger(__name__),在这些视图中您可能需要更多的细节。
要禁用日志记录,只需在视图顶部执行以下操作:logging.disable(logging.CRITICAL)

相关问题