如何将graypy与Django一起使用

2024-04-27 23:45:22 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在从事一个使用graylog server进行日志记录的项目,在settings.py中,我有以下内容:

    LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'handlers': {
    'console': {
        'class': 'logging.StreamHandler',
    },
    'file': {
        'level': 'DEBUG',
        'class': 'logging.FileHandler',
        'filename': os.path.join(BASE_DIR, 'users/debug.log'),
    },
    'graypy': {
        'level': 'WARNING',
        'class': 'graypy.GELFUDPHandler',
        'host': 'localhost',
        'port': 12201,
    },
},
'root': {
    'handlers': ['graypy', 'console', 'file',],
    'level': 'WARNING',
},
'loggers': {
    'django.request': {
        'handlers': ['graypy'],
        'level': 'ERROR',
        'propagate': True,
    },
},

}

此外,我在graylog服务器中进行了输入,并使用python简单脚本成功地对其进行了测试。当我在我的views.py中创建looger时,日志显示在文件和控制台中,但在graylog中不会显示!请帮我解决这个问题

my views.py:

    logger = logging.getLogger(__name__) 

    def home(request):
        logger.debug('A debug message')

        return render(request, 'users/home.html')

Tags: pydebugrequestgrayloglogginghandlerslevelusers
1条回答
网友
1楼 · 发布于 2024-04-27 23:45:22

最后,经过多次搜索,我发现这些容器一定在网络中,并且可以看到彼此!默认情况下,运行时每个容器都有一个名为“container\u name\u default”的网络,为此,我将Graylog服务器连接到我的应用程序,并在设置中将主机名更改为Graylog container name

相关问题 更多 >