无法将容器中的python stdout日志获取到“ OC日志”

时间:2019-04-15 12:38:15

标签: python cron containers openshift stdout

我有一个运行cron作业的openshift容器。此cron作业运行一些python代码。 我已经设置了一个记录器以将日志流式传输到stdout,我希望在查询“ oc logs [pod] -c [container]”时看到这些日志,但是我没有。

这是定义的记录器:

import os
import logging.config

synthetic_home = os.environ.get('SYNTHETIC_HOME')
logPath = '{0}/logs/'.format(synthetic_home)
fileName = 'synthetic.log'

synthetic_log_name = os.environ.get('LOG_NAME')
if not synthetic_log_name:
    synthetic_log_name = 'synthetic-onlinevideoservices'


config = {
    'version': 1,
    'disable_existing_loggers': False,
    },

    'formatters': {
        'standard': {
            'format': '%(asctime)s, {0}, SYNTH_TEST, %(levelname)s, FCID=%(fcid)s, *%(test_name)s* %(message)s'.format(synthetic_log_name),
            #            'datefmt': '%Y-%m-%dT%H:%M:%S.%f%z',
        },
    },
    'handlers': {
        'file': {
            'level': 'INFO',
            'class': 'logging.FileHandler',
            'filename': '{0}/{1}'.format(logPath, fileName),
            'formatter': 'standard'
        },
        'stream': {
                'level': 'INFO',
                'class': 'logging.StreamHandler',
                'formatter': 'standard'
        }
    },
    'loggers': {
        'results': {
            'handlers': ['stream'],
            'level': 'INFO',
            'propagate': True

        }
    }
}

logging.config.dictConfig(config)

我不确定这段代码是从cron作业运行的事实是否重要。 无论如何,我都需要INFO日志反映在“ oc日志”中,而事实并非如此。 我在做什么错了?

0 个答案:

没有答案