Логи

Описание: Программирование на супер модном мега крутом языке Питон.

dyvniy M
Автор темы, Администратор
Администратор
Аватара
dyvniy M
Автор темы, Администратор
Администратор
Возраст: 41
Репутация: 1
Лояльность: 1
Сообщения: 3579
Зарегистрирован: Ср, 10 октября 2012
С нами: 11 лет 5 месяцев
Профессия: Программист
Откуда: Россия, Москва
ICQ Сайт Skype ВКонтакте

#1 dyvniy » Пт, 10 февраля 2017, 11:29:54

Многопоточность из коробки
http://stackoverflow.com/questions/16929639/python-logging-from-multiple-threads

Есть ротация по времени, по размеру сделать не сложно.
http://stackoverflow.com/questions/8467978/python ... h-log-rotation-and-compression
https://docs.python.org/3/library/logging.handlers.html
Изображение

dyvniy M
Автор темы, Администратор
Администратор
Аватара
dyvniy M
Автор темы, Администратор
Администратор
Возраст: 41
Репутация: 1
Лояльность: 1
Сообщения: 3579
Зарегистрирован: Ср, 10 октября 2012
С нами: 11 лет 5 месяцев
Профессия: Программист
Откуда: Россия, Москва
ICQ Сайт Skype ВКонтакте

#2 dyvniy » Чт, 16 февраля 2017, 15:41:26

Про ротацию по времени
http://stackoverflow.com/questions/3496727/why-do ... filehandler-rotate-at-midnight
Но это условие у меня выполнено.

Документация по ротации логов
https://docs.python.org/3/library/logging.handlers.html#logging.FileHandler
Изображение

dyvniy M
Автор темы, Администратор
Администратор
Аватара
dyvniy M
Автор темы, Администратор
Администратор
Возраст: 41
Репутация: 1
Лояльность: 1
Сообщения: 3579
Зарегистрирован: Ср, 10 октября 2012
С нами: 11 лет 5 месяцев
Профессия: Программист
Откуда: Россия, Москва
ICQ Сайт Skype ВКонтакте

#3 dyvniy » Чт, 23 марта 2017, 08:47:24

Код: Выделить всё

class MetaLogging(type):
    def __call__(cls, *args, **kargs):
        for attr in dir(cls):
            value = getattr(cls, attr)
            if isinstance(value, MethodType):
                if attr.startswith('__'):
                    setattr(cls, attr, trace(value))
                elif attr.startswith('_'):
                    setattr(cls, attr, debug(value))
                else:
                    setattr(cls, attr, info(value))
        return super(MetaLogging, cls).__call__(*args, **kargs)
Изображение

dyvniy M
Автор темы, Администратор
Администратор
Аватара
dyvniy M
Автор темы, Администратор
Администратор
Возраст: 41
Репутация: 1
Лояльность: 1
Сообщения: 3579
Зарегистрирован: Ср, 10 октября 2012
С нами: 11 лет 5 месяцев
Профессия: Программист
Откуда: Россия, Москва
ICQ Сайт Skype ВКонтакте

#4 dyvniy » Пн, 20 ноября 2017, 17:42:53

log parsing
парсинг логов

Код: Выделить всё

import codecs
import os
fname 
= '01.txt'
content = []
with codecs.open(fname,'r',encoding='utf8', errors='ignore') as f:
    content = f.readlines()
line_number = 0
with codecs
.open(fname + '.out','w',encoding='utf8') as f:
    while f:
        line = content[line_number]
        if line.find('dumpCCDS') != -1:
            f.write(content[line_number])
        line_number += 1
Изображение


Название раздела: Python
Описание: Программирование на супер модном мега крутом языке Питон.

Быстрый ответ


Введите код в точности так, как вы его видите. Регистр символов не имеет значения.
Код подтверждения
:) ;) :hihi: :P :hah: :haha: :angel: :( :st: :_( :cool: 8-| :beee: :ham: :rrr: :grr: :* :secret: :stupid: :music: Ещё смайлики…
   

Вернуться в «Python»

Кто сейчас на форуме (по активности за 15 минут)

Сейчас этот раздел просматривают: 7 гостей