带有django dosent的loggly-python-handler将日志发送到loggly

时间:2019-03-24 13:11:04

标签: python django django-rest-framework loggly

我有Django应用(Django-Rest-Framework),我想通过HTTP添加与Loggly的集成。

我使用了库 loggly-python-handler ,但日志未发送到Loggly。

我关注了文档:https://www.loggly.com/docs/python-http/

  1. 我安装了loggly-python-handler
  2. i已将以下内容添加到Django setting.py文件中:

    LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,
    'formatters': {
        'verbose': {
            'format': '%(levelname)s %(asctime)s %(module)s %(process)d %(thread)d %(message)s'
        },
        'simple': {
            'format': '%(levelname)s %(message)s'
        },
        'json': {
            'format': '{ "loggerName":"%(name)s", "timestamp":"%(asctime)s", "fileName":"%(filename)s", "logRecordCreationTime":"%(created)f", "functionName":"%(funcName)s", "levelNo":"%(levelno)s", "lineNo":"%(lineno)d", "time":"%(msecs)d", "levelName":"%(levelname)s", "message":"%(message)s"}',
        },
    },
    'handlers': {
        'console': {
            'class': 'logging.StreamHandler',
            'level': 'DEBUG',
            'formatter': 'verbose',
        },
        'loggly': {
            'class': 'loggly.handlers.HTTPSHandler',
            'level': 'INFO',
            'formatter': 'json',
            'url': 'https://logs-01.loggly.com/inputs/TOKEN/tag/python',
        },
    },
    'loggers': {
        'django': {
            'handlers': ['console', ],
            'level': os.getenv('DJANGO_LOG_LEVEL', 'INFO'),
        },
        'APPNAME': {
            'handlers': ['console', 'loggly'],
            'level': 'INFO',
        },
    },
    

    }

  3. 我将令牌更改为我的令牌

  4. 在我的应用程序中,在views.py中,我叫记录器:

导入日志 logger = logging.getLogger(名称) logger.info(“这是INFO消息。”)

我使用 Fiddler 查看所有HTTP请求,但没有看到发送到Loggly网址的任何请求。

当我直接用curl调用它时,它会起作用。

curl -H "content-type:text/plain" -d '{ "message" : "hello" }' http://logs-01.loggly.com/inputs/61fd261c-062f-44b1-b866-f03f5d50f720/tag/http/

0 个答案:

没有答案