Pull to refresh
39
0
Artem Khvastunov @artspb

GoLand Team Lead

Send message

Собираем, парсим и отдаём логи с помощью Logstash

Reading time10 min
Views295K
Приветствую.

Так уж сложилось, что по долгу работы мне приходится много времени уделять логам. Это и участие в выработке правил и политик сбора/хранения/использования логов, это и разбор разных инцидентов и обнаружение аномалий. За сутки наши программы, сервисы и серверы генерируют ОЧЕНЬ большое количество логов. И потребность копания в логах растёт постоянно.
Мне довелось поработать с коммерческими лог-менеджмент продуктами типа ArcSight, RSA Envision, Q1 Labs. У этих продуктов есть как плюсы, так и минусы. Но в статье речь пойдёт не о них.
Речь будет о Logstash.

Что же такое Logstash? Зачем он нужен? Что он умеет?
Читать дальше →

Шаблон диссертации в LaTeX

Reading time1 min
Views59K
Недавно я начал нелёгкое дело по вёрстке диссертационной работы в LaTeX-е. Естественным первым желанием было найти какой-нибудь готовый шаблон. Увы, я не нашёл ничего, что подходило бы под мои нужны. Поэтому я решил сделать свой шаблон (с преамбулой и макрокомандами)! Сразу скажу по поводу соответствия шаблона ВАК-овским требованиям: строгих требований нет (можете сами посмотреть список нормативных документов). Однако определённые требования могут быть у конкретного совета (но они, как правило, весьма похожи и соответствуют здравому смыслу). В своём шаблоне я постарался учесть общие тенденции в оформлении такого рода работ. Не буду приводить кучу технических особенностей вёрстки в LaTeX (на эту тему и так хватает статей), а просто поделюсь готовым результатом: GitHub.
Почитать о содержимом шаблона

Светодиодная лента в качестве освещения комнаты

Reading time15 min
Views1.3M
Изначально для основного освещения одной из комнат, где шёл капитальный ремонт, планировалась обычная люстра. Но недавно мне на глаза попалась суперяркая светодиодная лента Ultra 5000 со светодиодами smd 5630 торговой марки Arlight. Решение было принято быстро, окончательно и бесповоротно — хочу такую ленту в качестве основного света в комнате.



О реализации светодиодного периметра освещения далее

JS модуль для Java разработчиков

Reading time7 min
Views9.4K
Во всем мире объем используемого JS кода в приложениях растет очень сильно, что уже неоднократно подчеркивалось, посмотреть картинки на эту тему можно например тут или тут. Соответственно с ростом количества кода возникает необходимость структурирования данных, управления зависимостями и проч., которые на данный момент решает целый букет фрэймворков, например RequireJS в композиции с Backbone. С другой стороны в мире Java для управления зависимостями и контроля процесса сборки проекта используется Maven, который отлично справляется с задачей разделения больших проектов на модули, запуска тестов в нужное время и т.д. У некоторых разработчиков, уже давно использующих Maven для сборки проекта, может возникнуть желание вынести свой отлично структурированый JS код в отдельный модуль, тестировать его во время сборки и совершать с ним все операции, которые позволяют делать плагины, о чем и пойдет речь.
Читать дальше →

Контролируемое кэширование страниц в nginx

Reading time3 min
Views37K
Введение

Как известно, nginx умеет кешировать ответ сервера, и выдавать его по запросу вместо обращения к бэкенду, экономя тем самым ресурсы сервера. Скорость отдачи таких закешированных страниц иногда поражает, ради таких скоростей иногда не жалко переносить на javascript многие функции сайта только для того, чтобы иметь возможность закешировать ещё 1 страницу целиком (Например, вынести отрисовку плашки с авторизацией юзера на js, чтобы иметь возможность кешировать страницу, которая идентична для всех пользователей, за исключением этой самой плашки).

Я много раз использовал возможность кэширование nginxом страниц, и натыкался на пару неудобных для себя вещей:
  • Можно легко закешировать вообще все страницы, но для динамических сайтов или для сайтов с авторизацией нужно ли это?
  • Можно закешировать отдельно несколько url, вида /album/*, но не переписывать же конфиг nginx каждый раз при появлении новых разделов сайта?

Читать дальше →

Законопослушный гражданин или Справочник Государственных сайтов РФ

Reading time4 min
Views82K
Доброго времени суток, Хабравчанин! На сайте, все чаще стали появляться статьи о том, как предприимчивые пользователи добивались справедливости (выполнения законов), при нарушении их прав, всяческими недобросовестными организациями. Обычно «джентельменский» набор таких контор это: смс-рассылка, телефонные звонки, хамство в офисах, некачественное предоставление услуг и товаров. Обычно, я терпимо отношусь к таким смс, в основном, это реклама такси. Но сегодня, мне пришли сразу Три Смс одного содержания, с рекламой кредитов. А при упоминании данного слова, у меня сразу же портится настроение. Поэтому для его улучшения, я полез в интернет.
В интернете, помимо нужного мне Роскомнадзора, есть много полезных сайтов, которые предлагает наше Государство. Обычно, ссылки на них очень хаотично разбросаны по сети. Здесь же, я публикую список наиболее актуальных и интересных, как мне думается, сайтов РФ, чтобы в случае надобности, они были под рукой.
Читать дальше →

Готовимся к Хабра-эффекту

Reading time3 min
Views13K
Наплыв посетителейЗаметка посвящена не столько возможным методам защиты (о них уже было много написано), сколько обзору небольшого списка для быстрой проверки при подготовке к возможных скачкам посещаемости. Судя по статистике нагрузки на электронные магазины на прошлой неделе (когда начался рождественский сезон продаж на Западе), даже для крупных магазинов время ответа может колебаться на 20%, что же говорить о менее крупных веб-сайтах?

Такую проверку обязательно нужно проводить перед выпусками новых продуктов, а также перед сезоном массовых покупок (для России это время в канун Нового Года и Рождества). Итак, с чего начать?
Читать дальше →

Блог на Wordpress с семантической разметкой

Reading time4 min
Views7.9K
Прошло более года с тех пор, как Google, Bing и Yahoo предложили стандарт семантической разметки Schema.org. Но вебмастера не спешат внедрять рекомендации поисковиков на своих сайтах. А зря. Например, представители Яндекса на вопрос о влиянии семантической разметки на ранжирование сайта ответили следующие:
«Во многих случаях использование разметки делает ваш сайт заметнее в Поиске Яндекса и таким образом привлекает больше целевой аудитории. Яндекс в свою очередь заинтересован в том, чтобы пользователи решали задачи, с которыми они пришли на Поиск. Одна из наших метрик качества так и называется „счастье пользователя“. Очевидно, что сайты, повышающие „счастье“ будут ранжироваться выше. „
Читать дальше →

Как делать графики в LaTeX

Reading time2 min
Views26K
Очень часто в документ необходимо вставить тот или иной график. На сегодняшний день есть множество инструментов позволяющие это сделать с возможностью вставки в LaTeX документ среди них Gnuplot, Matplotlib. В данном посте хотелось бы осветить еще один способ создания графика при помощи пакета pgfplots. Этот пакет является «надстройкой»/«дополнением» к пакету Tikz(PGF).

Читать дальше →

Python в Latex

Reading time3 min
Views18K
Использовать Python в LaTeX было бы очень удобно. Сразу предупреждаю, что предложенные методы считаются небезопасными, потому-что Python умеет гадить, если написать соответствующий код, так что проверяйте его (=

Существует готовый метод в виде файла стилей, используется так:
\usepackage{python}
\begin{python}
from math import sin
a = sin(5)
c = sin(9)
b =  max(a,c)
print b
\end{python}


Этот пакет, фактически, создает jobname.py, пишет вывод в jobname.py.out, jobname.py.err, и читает его.
Метод плох тем, что переменные не сохраняются от кода к коду, и для этого приходится использовать pickle, приходиться каждый раз заново всё import`ить и т.п., а еще мне кажется, что удобно иметь все расчеты в одном месте в отдельном файле, поэтому я построил свой лунапарк…
Читать дальше →

Усложнение жизни в LaTeX

Reading time3 min
Views26K
При вёрстке дипломной работы в LaTeX настал этап приведения её вида в соответствие хотя бы некоторым принятым стандартам. Соответственно, начались и поиски решения возникавших вопросов, в том числе стандартными средствами, то бишь путём гугления.

Первая мысль, возникшая после просмотра решений, найденных на разношёрстных форумах — «Я же не усну». Немного размышлений и оперативное пролистывание небезызвестных руководств Балдина, Сюткина и Львовского, подтвердивших результаты размышлений, позволили разобраться с вопросами гораздо более компактными, удобными и воспринимаемыми способами.

Читать дальше →

Шаблоны ЕСКД и ГОСТ 7.32 для Lyx 1.6.x

Reading time3 min
Views23K
Уже более полугода я пользуюсь текстовым процессором Lyx. Встроенных шаблонов с лихвой хватало, чтобы писать конспекты лекций, готовиться к семинарам и делать несложные отчеты к лабораторным работам. Но в прошлом семестре пришлось делать два курсовых проекта в соответствии с требования ЕСКД. Я начал работу в Lyx, но без специальных шаблонов документов, мои отчеты в редакторе выглядели так:

Читать дальше →

Подготовщик текста для LaTeX (или типограф на Python)

Reading time1 min
Views2.8K
Однажды мне захотелось автоматизировать подготовку текста для преобразования в LaTeX. Начав с простых замен, увлёкся процессом. В итоге, получилось нечто похожее на типограф.

Хорошими источниками идей послужили топик «Типограф на Python» и список правил из «Публичной порки он-лайн типографов». Я старался описывать лишь однозначные, легко реализуемые правила. Конечно, удалось реализовать не всё, и как только стало ясно, что достигнут приемлемый уровень, решил опубликовать свою работу.

Предлагаю Посмотреть или Скачать.

Upd Проект в Google Code

Печать документа pdf буклетом

Reading time1 min
Views16K
В процессе подготовки автореферата диссертации я обнаружил, что okular не умеет печатать pdf буклетом, то есть пересортировывая странички для получения книжечки размера A5. Всё что я нашёл по этому вопросу заключалось в использовании утилит psbook и psnup, что меня не устраивало по причине того, что приходилось перегонять pdf в ps. Почему-то в результате этого преобразования получался ps файл размером в 50 мегабайт и меня это не устраивало.

Но я нашёл замечательный пакет для LaTeX, который называется pdfpages. С его помощью можно вставлять станицы в теховый документ из сторонних pdf файлов преобразовывая их всяческим образом. Я создал ещё один теховый файл с очень простым содержимым:

\documentclass[letterpaper, 11pt]{article}
\pagestyle{plain}
\usepackage{pdfpages}
\usepackage[a4paper,nohead,includefoot,mag=1000]{geometry}
\begin{document}
 \includepdf[pages={-}, signature=24, landscape]{autoref}
\end{document}


При компиляции это файл берёт страницы из файла autoref.pdf, пересортировывает их нужным образом и ставит по 2 на страницу. Добавив одну строчку к Makefile я сразу же получаю готовый pdf, можно смело печатать с двух сторон (по длинной стороне) и получить заветную книжку.

Надо заметить, что таким образом превратить в буклет можно любой pdf файл, не обязательно сгенерированный pdftex'ом.

[Перевод] Построение документов Latex с помощью Waf

Reading time5 min
Views2.7K
Это исправленный и дополненный перевод статьи о многофункциональной системе сборки Waf.

С самого начала использования сервиса Dropbox для хранения моих научных исследований и проектов я стал искать решение, которое позволит мне строить документы LaTeX без засорения каталога с документом. В обычных условиях я просто игнорирую такие файлы, но под Dropbox, каждый раз после построения документа файлы начинают синхронизироваться с сервером. Так как в Dropbox нет возможности указать файлы для игнорирования (если кто-то из компании читает это сообщение, пожалуйста, сделайте файл .dropboxignore), то я начал искать другое решение.
Читать дальше →

Разновидности TeX

Reading time5 min
Views15K

Введение


Я не нашёл упоминаний на хабре про xetex, lualatex которые в кратком, сжатом виде рассказывали о том что это такое. Поэтому таким образом появилась данная идея: написать кратко об основных системах вёрcтки. И так начинаем по порядку.
Читать дальше →

Стилевой пакет DMVN

Reading time3 min
Views3.4K
Когда я увидел на главной странице топик про LaTeX в одноимённом блоге, я порадовался, что на Хабре освещается близкая мне тема (и немного опечалился, что не написал подобную статью сам ;)). За плечами имею некоторый опыт работы с TeX'ом в виде 300 свёрстанных страниц лекций по матану (три семестра), пары курсовых работ и кое-чего по мелочи. Накопленным опытом грех не поделиться — поэтому я и пишу этот материал.

Сегодня речь пойдёт о стилевом пакете, который здорово упрощает жизнь ТеХ-никам.

Читать дальше →

Мобильная версия ruTorrent

Reading time3 min
Views20K
У меня дома стоит мини-сервер сделанный из старого ноутбука. Одно из основных предназначений – торренты. В качестве клиента используется rTorrent + rutorrent. В такой связке меня всё устраивало кроме одного: невозможность использовать rutorrent со смартфона. Причин на это две:

  1. Сильная зависимость от правой кнопки мыши. Лечится при помощи плагина ipad, но как можно сделать вывод из названия плагина этот вариант подходит только для планшетов из-за второй причины.
  2. Неприспособленность интерфейса к маленьким дисплеям. Пример можно увидеть на скриншоте ниже (скриншот сделан на HTC Incredible S. Разрешение: 800x480, размер экрана: 4")



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

oDesk для начинающих

Reading time6 min
Views502K

Зачем?

Вообще, идея этого поста пришла мне в голову в тот самый момент, когда я, не имея до этого за плечами полноценного опыта фриланса, решил всерьез освоить oDesk. Да, если кто не знает, oDesk — это одна из крупнейших в мире фриланс-бирж. Итак, дело было в июле этого года. Официальной работы к тому времени у меня уже полгода как не было, все подработки закончились, новых серьезных заказов не предвиделось, и oDesk представлялся мне весьма перспективным вариантом. Аккаунт, как водится, был зарегистрирован «про запас» еще за год до того, но висел все это время без дела, поэтому начинать нужно было с нуля. При этом я был почти уверен, что руководство, хотя бы самое краткое, на тему, как и с чего начинать, я где-нибудь (уж на Хабре-то точно!) да найду.
Возможно, я плохо искал. Однако все, что мне попалось по теме, сводилось только к тому, что не нужно сразу загибать цены, лучше начинать с небольших. Примерная цитата: «начинайте с $10 в час, со временем, дорастете и до $15». Дорастать до $15, да еще и со временем, мне категорически не хотелось, я был уверен, что можно зарабатывать значительно больше. Да и кроме того, меня волновало огромное количество вопросов. Как заполнять профиль? На какие проекты откликаться? Как составлять cover letter? Как, черт побери, получить этот первый заказ, когда все тебе отказывают?
В тот момент я решил, что если все у меня получится, обязательно напишу то самое руководство для новичков, которого я не нашел.

Читать дальше →

Высоконагруженные джинсы

Reading time3 min
Views10K
В этой статье пойдет речь о том, как мы, Getwear, решили проблему доступности нашего сервиса из любой точки планеты, в которой есть интернет. Описанный (и легко доступный для внедрения) инструментарий может быть полезен для владельцев сайтов любой тематики, рассчитанных на аудиторию из разных стран.

Читать дальше →

Information

Rating
Does not participate
Location
Germering, Bayern, Германия
Date of birth
Registered
Activity