Почему у меня так много вариантов установки? Что я выбираю?

Вот решение, основанное на мощном, но плохо документированном методе logging.config.dictConfig . Вместо того, чтобы отправлять каждое сообщение журнала на стандартный вывод, он отправляет сообщения с уровнем журнала ERROR и выше на stderr, а все остальное на stdout. Это может быть полезно, если другие части системы прослушивают stderr или stdout.

import logging
import logging.config
import sys

class _ExcludeErrorsFilter(logging.Filter):
    def filter(self, record):
        """Filters out log messages with log level ERROR (numeric value: 40) or higher."""
        return record.levelno < 40


config = {
    'version': 1,
    'filters': {
        'exclude_errors': {
            '()': _ExcludeErrorsFilter
        }
    },
    'formatters': {
        # Modify log message format here or replace with your custom formatter class
        'my_formatter': {
            'format': '(%(process)d) %(asctime)s %(name)s (line %(lineno)s) | %(levelname)s %(message)s'
        }
    },
    'handlers': {
        'console_stderr': {
            # Directs log messages with log level ERROR or higher to stderr
            'class': 'logging.StreamHandler',
            'level': 'ERROR',
            'formatter': 'my_formatter',
            'stream': sys.stderr
        },
        'console_stdout': {
            # Directs log messages with log level lower than ERROR to stdout
            'class': 'logging.StreamHandler',
            'level': 'DEBUG',
            'formatter': 'my_formatter',
            'filters': ['exclude_errors'],
            'stream': sys.stdout
        },
        'file': {
            # Directs all log messages to a file
            'class': 'logging.FileHandler',
            'level': 'DEBUG',
            'formatter': 'my_formatter',
            'filename': 'my.log',
            'encoding': 'utf8'
        }
    },
    'root': {
        # In general, this should be kept at 'NOTSET' to ensure it does
        # not interfere with the log levels set for each handler
        'level': 'NOTSET',
        'handlers': ['console_stderr', 'console_stdout', 'file']
    },
}

logging.config.dictConfig(config)

2
задан 06.05.2020, 11:11

1 ответ

Вы устанавливаете в массив дисков, вероятно. Если вы не уверены в этом, лучше вернуться к методу автоматической установки (предыдущий шаг) и использовать его. Если вы используете предустановленную систему, вероятно, что они использовали RAID для предоставления вам SSD + HDD или 2 HDD. Вы должны идти очень осторожно. Обязательно обратитесь к руководству пользователя.

0
ответ дан 06.05.2020, 11:12
  • 1
    Нет никакой опции автоматической установки, только сотрите жесткий диск или " что-то else". That' s, почему I' m здесь во-первых. – avance 06.05.2020, 11:12
  • 2
    Отправьте снимок экрана Gparted. Проверьте этот также askubuntu.com/a/371812/169736 – Steven Fisher 06.05.2020, 11:12
  • 3
    Да. I' ve искал решение, но никто не знает what' s продолжение. – Alex Stone 06.05.2020, 11:13
  • 4
    Вы отключенная быстрая загрузка в Windows? – Bharat 06.05.2020, 11:13

Теги

Похожие вопросы