Я использую Python 3.3.5 и модуль регистрации для записи информации в локальный файл (из разных потоков). Есть случаи, когда я хотел бы выводить некоторую дополнительную информацию, не зная точно, что это за информация (например, это может быть одна строка текста или dict).
Что бы я хотел сделать, это добавить эту дополнительную информацию в мой файл журнала после записи записи журнала. Кроме того, дополнительная информация необходима только тогда, когда уровень журнала является ошибкой (или выше).
В идеале это выглядит примерно так:
2014-04-08 12:24:01 - INFO - CPU load not exceeded
2014-04-08 12:24:26 - INFO - Service is running
2014-04-08 12:24:34 - ERROR - Could not find any active server processes
Additional information, might be several lines.
Dict structured information would be written as follows:
key1=value1
key2=value2
2014-04-08 12:25:16 - INFO - Database is responding
За исключением написания настраиваемого формата журнала, я не мог найти многого, что соответствовало моим требованиям. Я читал об фильтрах и контекстах, но опять же это не похоже на хорошее совпадение.
В качестве альтернативы, я мог бы просто записать файл с использованием стандартного ввода-вывода, но большинство функций уже существует в модуле ведения журнала, и, кроме того, оно поточно-безопасно.
Приветствуется любой ввод. Если пользовательский форматор журналов действительно необходим, любые указатели на то, с чего начать, были бы фантастическими.