|
Анализ логов, много логов! Как быть? | ☑ | ||
---|---|---|---|---|
0
sirbure
30.10.15
✎
12:06
|
Ситуация- Мне нужно проанализировать ~50 логов, проблема в том, что они бородатые и соответственно очень толстые начиная от 100 мб и доходит аж до 1.5 гб, проанализировать нужно два крайних месяца, казалось бы пореж лог, но проблема в том, что он режется полностью=( я предполагаю из за размера, что из конфигуратора, что консолью результат один. Есть у меня 2 обработки которые читают лог, одна - сам файл lgp как текстовый док, но сами понимаете 700 мб - это часов 6)) Вторая парсит лог в mxl - соответственно- шустрее. Так вот, Можно ли как то массово конвертнуть lgp в mxl? или же как можно быстрее распарсить lgp? Просто заходить в 50 баз и оттуда конвертить лог тож не очень комильфо! или другого варианта нет, как подпрячь людей повыгружать мне эти логи?)
|
|||
1
Мыш
30.10.15
✎
12:29
|
(0) Сколько денег?
|
|||
2
Мыш
30.10.15
✎
12:34
|
Лан, бесплатный совет. Ищешь строку, начинающуюся с чего-то типа {20150101000001,N,
Копируешь всё от неё и до конца. Ещё первые две строки с этого же файла берешь. Это будут данные за 2015-й год. Вот его потом и обрабатываешь. |
|||
3
sirbure
30.10.15
✎
12:47
|
(2) Я думал об ентом, только вот при работе с текстовым файлом строку эту можно найти перебором только, прикинь перебрать 6 мультов строк?)))
|
|||
4
rs_trade
30.10.15
✎
12:48
|
(0) Загоняешь в таблицу ms sql и запросами анализируешь сколько влезет
|
|||
5
Гёдза
30.10.15
✎
12:49
|
1с советует awk, grep
|
|||
6
PR третий
30.10.15
✎
12:51
|
(3) А кто тебе предлагает резать файл средствами 1С?
|
|||
7
Кирпич
30.10.15
✎
12:53
|
(3) так ты в блокноте будешь перебирать? тогда да.
|
|||
8
sirbure
30.10.15
✎
12:59
|
(6) Эм... действительно) То есть, предлагаешь чем нибудь другим, разрезать файлы, вытащить нужный период, и потом с тхт шником парсить? Просто обработки то которыми анализурую - 1Сные))
|
|||
9
sirbure
30.10.15
✎
13:01
|
(7) ну а как иначе то, если есть 2 обработки, либо читают txt либо mxl.
|
|||
10
Мыш
30.10.15
✎
13:03
|
(3) winhex
|
|||
11
sirbure
30.10.15
✎
13:14
|
(10) А Cmd команды есть у него? что бы скрипт для резки написать?
|
|||
12
Мэс33
30.10.15
✎
13:24
|
Накатать скрипт на том же Python и по рекекспу искать нужные строки.
С какой целью надо логи перелопатить? |
|||
13
sirbure
30.10.15
✎
13:34
|
(12) с целью найти, кто и когда создал/изменил, те или иные док-ты.
|
|||
14
sirbure
30.10.15
✎
13:37
|
(12) тык парсеры есть)) Проблема в размерах логов, получается писать скрипт порезки файлов, блин все равно конечно, два месяца через тхтшник это люто) часа на 2-3 каждый(((
|
|||
15
Лодырь
30.10.15
✎
13:44
|
Запусти анализ паралельно.
|
|||
16
PR третий
30.10.15
✎
13:46
|
(8) Конечно же порезать другим.
|
|||
17
HawkEye
30.10.15
✎
13:49
|
(0) на последнем евенте Алексей Лустин как раз показывал механизмы анализа логов ))) найди его презентацию
|
|||
18
Мэс33
30.10.15
✎
13:51
|
(14) видел готовую обработку для анализа логов, но он умирал на моих логах в 6 гб (резал я ежегодно на старой работе).
|
|||
19
Мэс33
30.10.15
✎
14:12
|
Python заполняет текстовый файл в миллион строк за пару секунд.
gogo = open ("log.txt","w") for i in range(1,10000001,1): gogo.write("Hello, Mista!\n") gogo.close() Читает примерно с такой же скоростью. Я бы на нем парсер накатал. |
|||
20
sirbure
30.10.15
✎
14:24
|
(19) да беда в том что не юзал питона((
|
|||
21
Мэс33
30.10.15
✎
14:28
|
(20) Попробуй, понравится. После java отдыхаешь ))).
Что ищем-то? По каким параметрам? |
|||
22
Гёдза
30.10.15
✎
14:30
|
(19) Да все языки норм работают и с файлами и со строками, кроме 1С )))
|
|||
23
Мэс33
30.10.15
✎
14:32
|
(22) Да я просто увлекся питоном ))). Поэтому пишу. А со строками работает весьма прозрачно и синтаксис чертовски приятен.
Так что будем искать? |
|||
24
sirbure
30.10.15
✎
15:00
|
(23) Да мне получается нужно только порезать лог, получается нужно найти дату 01.07.2015 и вырезать из лога все строки до нее))
|
|||
25
Гёдза
30.10.15
✎
15:01
|
Лучше всего awk
|
|||
26
Лефмихалыч
30.10.15
✎
15:05
|
(0) >как можно быстрее распарсить lgp
lgp - тупой текстарь, практически csv - парсь, чем удобно. >Просто заходить в 50 баз и оттуда конвертить лог автоматизируй это! Коннект через com-соедиениение и ВыгрузитьЖурналРегистрации() |
|||
27
sirbure
30.10.15
✎
15:25
|
(26) во во! По подробнее плз!!!
|
|||
28
Лефмихалыч
30.10.15
✎
15:26
|
(27) с какого места тебе поподробнее? Как
База = Новый COMОбъект("v83.ComConnector") создать? или как База.ВыгрузитьЖурналРегистрации()? |
|||
29
sirbure
30.10.15
✎
15:28
|
(28) С самого начала) То есть, грубо говоря я в любой конфе, запускаю обработку, которая коннектится к другой базе, и через неё выгружаю файл регистрации?)
|
|||
30
Лефмихалыч
30.10.15
✎
15:28
|
(29) в любой.. Тебе для этого нужно только логин-пароль в этой базе и знать, где она лжит
|
|||
31
sirbure
30.10.15
✎
15:33
|
(30) мне к 2ке нужно конектится!
|
|||
32
sirbure
30.10.15
✎
15:43
|
(30) и в mxl можно выгрузить?
|
|||
33
Мэс33
30.10.15
✎
16:48
|
Зачем выгружать, если все и так лежит в виде текстовых файлов?
Напишешь парсер, укажешь 50 путей к логам и вперед. Можно и в 1С, только он будет дольше сие делать. (2) написал же - ищешь {20151008200752, - и копируешь все, что ниже. |
|||
34
Лефмихалыч
30.10.15
✎
16:58
|
(31) чаво? к чему тебе нужно коннектиться?
|
|||
35
sirbure
30.10.15
✎
17:05
|
(34) да к 8.2! Спасибо Большое! Все получилось! Явно нужно поспать, как сам то не додумался к базе конектиться через внешнее соединение... капец
|
|||
36
sirbure
30.10.15
✎
17:11
|
(33) Тык два парсера - обработки 1сные, одна тхт парсит втарая mxl, вторая быстрее работает)) в сотни раз)))) вот Левмихалыч мне глаза открыл что можно через внешку в мхл это все выгрузить) проблема решена))
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |