чтобы я мог добавить дополнительные поля в сообщение журнала, например
logging.info("My log Message", extra={"someContext":1, "someOtherContext":2})
это хорошо
но неясно, как извлечь все дополнительные поля в моем форматере журнала
def format(self, record):
record_dict = record.__dict__.copy()
print(record_dict)
в приведенном выше примере я вижу все свои дополнительные поля в выходном словаре, но они сведены в словарь с кучей другого мусора, который мне не нужен
{'name': 'root', 'msg': 'My log Message', 'args': (), 'levelname': 'INFO', 'levelno': 20, 'pathname': '.\\handler.py', 'filename': 'handler.py', 'module': 'handler', 'exc_info': None, 'exc_text': None, 'stack_info': None, 'lineno': 27, 'funcName': 'getPlan', 'created': 1575461352.0664868, 'msecs': 66.48683547973633, 'relativeCreated': 1253.0038356781006, 'thread': 15096, 'threadName': 'MainThread', 'processName': 'MainProcess', 'process': 23740, 'someContext': 1, 'someOtherContext':2}
есть ли какой-нибудь способ получить все мои дополнительные ключи, не зная их всех заранее,
я пишу форматтер json и хочу создать словарь а-ля
justMyExtra = ?????
to_log = {
"message" record_dict["message"],
**justMyExtra
}
Подробнее здесь: https://stackoverflow.com/questions/591 ... -formatter
Извлеките дополнительные поля при вызове журнала в средстве форматирования журналов. ⇐ Python
Программы на Python
1730266847
Anonymous
чтобы я мог добавить дополнительные поля в сообщение журнала, например
logging.info("My log Message", extra={"someContext":1, "someOtherContext":2})
это хорошо
но неясно, как извлечь все дополнительные поля в моем форматере журнала
def format(self, record):
record_dict = record.__dict__.copy()
print(record_dict)
в приведенном выше примере я вижу все свои дополнительные поля в выходном словаре, но они сведены в словарь с кучей другого мусора, который мне не нужен
{'name': 'root', 'msg': 'My log Message', 'args': (), 'levelname': 'INFO', 'levelno': 20, 'pathname': '.\\handler.py', 'filename': 'handler.py', 'module': 'handler', 'exc_info': None, 'exc_text': None, 'stack_info': None, 'lineno': 27, 'funcName': 'getPlan', 'created': 1575461352.0664868, 'msecs': 66.48683547973633, 'relativeCreated': 1253.0038356781006, 'thread': 15096, 'threadName': 'MainThread', 'processName': 'MainProcess', 'process': 23740, 'someContext': 1, 'someOtherContext':2}
есть ли какой-нибудь способ получить все мои дополнительные ключи, не зная их всех заранее,
я пишу форматтер json и хочу создать словарь а-ля
justMyExtra = ?????
to_log = {
"message" record_dict["message"],
**justMyExtra
}
Подробнее здесь: [url]https://stackoverflow.com/questions/59176101/extract-the-extra-fields-in-logging-call-in-log-formatter[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия