我在 Linode 服务器中使用 django Rest 框架创建了一个 API。现在,我想检查每个请求的数量和响应代码,我想获取我的 api 的统计信息。我该怎么做?非常感谢你。
DRF Tracking 是跟踪 DRF API 视图请求的实用程序,它可能很适合您:
安装:
pip install drf-tracking
应用迁移:
python manage.py migrate
将以下内容添加到您的 API 视图中:
from rest_framework import generics
from rest_framework_tracking.mixins import LoggingMixin
class LoggingView(LoggingMixin, generics.GenericAPIView):
def get(self, request):
return Response('with logging')
如果您想要有更多选择,还有其他选择 Django Analytics。
因此,最简单的开始方法是检查网络服务器的访问日志。这应该为您提供请求输入和响应输出的数量,包括状态代码。如果您想要更多功能齐全的统计数据以及监控和警报,您可能需要研究诸如 NewRelic 之类的东西。
也许你可以使用drf-tracking
Apitally 也可能很适合这里。
它配备了 Django REST Framework (DRF) 的中间件,可捕获请求和响应元数据,并提供一个简单的仪表板,其中包含各种 API 指标和见解,包括请求数量、错误率、响应时间、有效负载大小等。
有一个特定的 Django REST Framework 设置指南,您可以按照它开始使用。基本步骤是:
在 Apitally 仪表板中创建应用程序以获取客户端 IDpip install "apitally[django_rest_framework]"
MIDDLEWARE = [
"apitally.django.ApitallyMiddleware",
# Other middleware ...
]
APITALLY_MIDDLEWARE = {
"client_id": "your-client-id",
"env": "dev", # or "prod" etc.
}
我是 Apitally 的作者。