vt

щас ехал домой, таксист был очень суровый дедуля. Когда я ему сказал, что давай заедем вон туда перед домом, где продают алкоголь, он стал вдвое суровее. Мне уже стало стыдно, что я бухаю перед дидом. Но остановившись перед моим домом, он у меня попросил сигарет, и протянул 5 рублей! Я дал ему сигарет на 18 рублей и его 5 не взял! Оказывается он курить хотел всю дорогу, а я думал меня убить!

fillest

Долепил потихоньку систему агрегации логирования до состояния, когда вроде уже не стыдно черкнуть о ней пару слов.
Суть: приложения осуществляют логирование, в том числе ошибок (назовём это "событиями"), нужно 1) узнавать о важных событиях 2) удобно с ними работать — просматривать, разгребать и т.п.
Из пункта №1 следует нотификация на мыло, а из №2 — центральная уеб-морда с фильтрами, кнопочками и котиками.

В качестве морды я сначала попробовал sentry. Ну, как обычно, казалось бы, за столько лет индус-трийки могли ведь решить эту задачу? Но, как обычно, нет, оно сходу не завелось, причем с неясными симптомами. В тот момент у меня ещё не остыл пердак от какой-то предыдущей неработающей поделки для другой задачи, поэтому sentry быстро отправилась к собачьм хуям, а морду я, короче, навелосипедил.

Но морда это полдела. Любое событие-ошибка ценно, и я не считаю, что допустимо терять часть событий при отказе апстримов (типа "если ошибка произошла но не сохранилась, то ничего, произойдёт ещё раз"), поэтому порицаю популярные методы типа "сунуть событие в udp-сокет, перекреститься и пойти в кабак". Нужно обеспечить достаточно надёжную доставку и сохранение событий (и уведомления).
Поэтому сделал так: приложение сразу локально сохраняет событие на диск в очередь. С очередями в этой индус-трийке отдельная песня, но нашёл пригодный для начала beanstalk. Рядом (на том же хосте) — приложение, которое берёт событие из очереди и пытается слать в апстрим (морду), пока тот не ответит "ок". Морда принимает событие и кладёт уже наконец в постгрес.

Система будет вскоре использоваться и для js-ошибок (а потом, возможно, и для мобилок), там уже локальных очередей нет, и нужно будет, как минимум, удостовериться, что латенси ответа морды не создаёт помех. И контроль частоты, чтоб нас не заспамил какой-нибудь мамкин хеккер.

События могут сыпаться пачками, поэтому сразу отправлять мыло нельзя — каждые n минут отдельное приложение проверяет, накопилось ли событий, и тогда уже шлёт. Тоже через очередь — celery #2777525 — она была засетаплена для "клиентского" мыла и всякого "cron"-процессинга.

Далее, приходят одинаковые события, поэтому их надо группировать. Для этого я сделал хеширование от полей события (источник, шаблон сообщения и т.д.). В питоне, например, есть культурный логгинг с шаблоном сообщения и аргументами. Но, даже если вырезать числа, некоторые сообщения нельзя просто так схлопнуть, т.к. некоторые либы любят насрать прямо в шаблон каким-нибудь uuid или меняющимся текстом, и в трейсбэках тоже встречаются динамические куски. В качестве компромисса я добавил второй уровень хеширования — по имени файла и строке. По нему матчится, если не сматчилось по "контентному" хешу. Это не даёт причислять сообщения из одного места к разным группам (это было бы полезно, например при разных кодах ошибок в сообщении), но зато просто и надёжно решает проблему.

Некоторые группы событий (всякое info, например) не требуют реакции от людей, для них есть кнопочка "ignore". Ещё есть кнопочка "resolve" для пометки групп, в отношении которых приняты меры. И фильтры для статусов и источников.

В данный момент в базе овер 2 миллиона событий, и пока ничё не тормозит (да и нечему, но всё же ^_^).

fillest

Накорябал своё первое в стиме миниревью для Block N Load, за пару дней оно вышло на первое место на странице игры. УСПЕХ.
26 of 32 people (81%) found this review helpful
Судя по
2 people found this review funnyпри отсутствии намеренных шуток в тексте, рунглиш мой неуклюж. Сам я этого увидеть не могу, хоть и знаю что пишу слабо, с артиклями вот плаваю, например, со структурой тоже.

P.S. радуюсь весне

isilmine

Прочитал "Искусство слышать стук сердца".
В общем, очень #примечательная для меня #книга, хотя:
1. Увидев обложку, вначале прочел "Искусства слышать сук сердца".
2. Книга бумажная (а я от них отвык).
3. В книге никого не убивают, нет ничего откровенно или намекающе умного, книга не энциклопедия, и вообще — о любви.

Прочтя ее, я вновь уверился, что интересными бывают книги с очень простым либо очень сложным сюжетом. Эту (с очень простым), читать было интересно, хотя и закончилась она быстро (триста семьдесят семь страниц полезного текста).

В общем, если вы верите в привязанности, любите юристов (которых никто, на самом деле, не любит), и слово "Бирма" тоже кажется вам привлекательным — можно и прочитать.

Тем (всем) кого мое сумбурное описание не удовлетворит, можно сходить на имхонет и прочесть аннотацию.

А мне можно и перечитать некоторые моменты :з

isilmine

Люблю смотреть на трамваи из окна вечером :> Моя квартира окнами как раз выходит на депо, откуда они выезжают по утрам. Эти грохочущие недоразумения, выкрашенные в смешной желтый и унылый голубой, стали чем-то вроде шумных, безодбидных, но все еще любимых соседей.
А иногда, особенно по выходным, вечером, можно увидеть особенный, красный трамвай, в котором одни мои приятели давно устроили кофейню на рельсах. Его леденцово-желтые окна настолько теплые и уютные, что даже мне через сотню метров становится хорошо и приятно.

isilmine

Бакемоногатари всё.
Довольно неплохо, но, чтоб прям вставило, наверное, надо внимательно посмотреть еще раз.
Нисемоногатари ещё, не знаю, как взлетит, думаю, если персонажи те же, съем.
Килакил до сих пор, только одиннадцатая серия, ненавижу онгоинги.
дневники задрота аниму потратил четыре вечера на тайтл слабак ебаный

nox

Пил
Бросил
Начал отжиматься
Съездил на похороны
Запил
Бросил отжиматься
Бросил пить
Начал отжиматься
Сходил посрать
Съел булочку детскую по 185 копеек

nox

Сегодня мне какой-то хипс возле метро хотел вручить брошюрку из серии "Как толерантно относиться к гомосекам". Дал ему под дых, да пошёл в метро.
Может надо было что-то сказать? А то вдруг он думает, что я просто обознался?

nox

Сегодня пришел ко мне служащий горгаза — молодой прыщавый пидор. Сказал, что если моя квартирная хозяйка не заключит какой-то договор, то они сообщат о ней в налоговую. Я вежливо спросил его ФИО, затем сообщил, что если хоть пискнут в налоговую, то он будет на этой лестничной площадке собирать свои зубы. Он сказал, что понял.

isilmine

Случилось несколько вещей.
Собаки чуть не порвали свежепривезенную кошку.
Я нашел скорпиона в гараже.
Включил свой старый цонпутер, и, на удивление, там все прекраснейшим образом работает, как часы. Как часы!

isilmine

Такие были дела, жуик. Собирались выпить вчера с друзьями в хипстерском заведении, называется "Ракета" — такое ламповое место с милым оформлением под летный ангар, или что-то типа того, кругом сисечки, шлемы, няши, но не удалось — нас было слишком много, а мест — слишком мало. Пошли в "Пинту", хорошенько накачались виски, было весело, много позитива, удовольствия.
Потом случилось печальное. Проводил Боромира до работы и там в пьяном состоянии избил одного ублюдка, который, в общем, напросился сам. Самое печальное — порванный рюкзак. В какой-то момент ублюдок повалился на пол от ударов ногами в живот, и я принялся охаживать его рюкзаком. Рюкзак, даром, что фирменный, не выдержал ужасов войны и порвалась лямка. Ублюдок, правда, был готовый.
Стыдно теперь немного.

kostanakis

Сегодня,видимо, судный день. Ибо. Утро началось вполне спокойно, отработал норму в качалке, чуть не уснул на лекции. И тут-началось...сначала позвонили из знакомой конторы- принтер не печатает, не растет кокос. Ок, еду исправлять. В дороге еще звонок- вечером надо забрать ипад и ноутбук на приведение в рабочее стояние. Тут директр конторы тоже оказывается захотела ноутбук домой купить. Ладно, уехал на учебу, там сломал мозг и чуть не сдох от голодухи. Опосля купили директр ноут, 4 амд ядра, 6 оперативы, 2 гектара видео. Это ей фильмы смотреть и в нете сидеть. Щас еще еду родственнице скайп починять. Ну и денек...

isilmine

Наверное, немного цинично было с моей стороны пялиться на превосходные фрмы моей старосты, когда она так добродушно угощала меня кофе.
Во всяком случае, в следующий раз притворюсь, будто у нее там, например, соринка

isilmine

Операция "Достань Денег" объявляется начатой.
Обджективс:
1. Собрать долги.
2. Собрать займы.
3. Сделать еще что-нибудь.
4. Прожить на собранное до конца месяца.
Пора бы уже вывесить объявление, что инвестиционный проект "Isilmine" принимает пожертвования.

isilmine

А еще у всех хороших девушек есть парни, гарантированно. Удел тех, кто не успел — бляди и пиво.
Впрочем, я люблю... пиво.
На третьем же году обучения довольно весело. Занятия проходят интересно, особенно понравились некоторые из новых предметов — c.f и financial engineering.
И в восемь приезжает мама в гости.
Короче, мой быт так быстро завертелся, что ой.