• Где же у него кнопка?! Как простому человеку выгрузить данные из Kibana и Elasticsearch и не напрягать при этом разрабов

      Elasticsearch, Kibana и Logstash (ELK) – отличный набор инструментов для сбора и визуализации большого количества данных.

      Логи, журналы, события – всё это довольно легко собирается, мапится и отображается в едином инструментарии. Logstash мапит данные, Elasticsearch хранит их, а Kibana отображает в виде графиков.

      При всей мощи этой связки, естественно, есть задачи, которые невозможно реализовать через встроенные возможности.

      Например, Kibana прекрасно показывает данные в рамках одной таблицы (индекса), но как только дело доходит до объединения разных индексов в одну выборку, она беспомощно разводит руки.

      И единственный способ решить задачу в этом случае – выгрузить данные из Kibana и объединить их в любом другом средстве, например, в Excel.

      Простой пример. Представьте, что Ваша Ёлка (ELK) собирает и хранит события Jira – по любому изменению любой из задач таск-трекера.

      В этом случае в индексе Elasticsearch по одной задаче будет храниться несколько записей:


      Читать дальше →
      • +15
      • 6.6k
      • 8
    • Небольшие трюки с Elasticsearch

        Небольшая заметка, скорее для себя, о мелких трюках по восстановлению данных в Elasticsearch. Как починить красный индекс если нет бэкапа, что делать если удалил документы, а копии не осталось — к сожалению в официальной документации об этих возможностях умалчивают.
        Читать дальше →
        • +13
        • 7.7k
        • 5
      • Я устал принимать платежи через WebView. Что мне делать?

          Я езжу в офис на электричке — нужно проехать одну станцию, и я буду почти на месте.

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

          Это когда ты бежишь на поезд, а тебе говорят «Что-то пошло не так» и списывают деньги, а билет не дают. Возврат приходит тут же, но поезд-то уже ушел. Такое происходит пару раз в месяц, вне зависимости от качества интернета. Ни о каких -пэях и говорить не приходится.



          В этот момент задумываешься — а может, есть способ проще? Ну, чтобы вообще без вебвью, красиво и нативно. И да, такой способ есть. Подробности под катом.
          Читать дальше →
        • Принцип работы свёрточной нейронной сети. Просто о сложном

          • Translation
          Глубокие нейронные сети привели к прорыву во множестве задач распознавания образов, таких как компьютерное зрение и распознавание голоса. Сверточная нейронная сеть один из популярных видов нейронных сетей.

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


          2D Свёрточная нейронная сеть
          Читать дальше →
        • Garbage Collection наглядно

          • Translation
          В последнее время я работаю с клиентами над вопросами настроек JVM. Смахивает ситуация на то, что далеко не все из разработчиков и администраторов знают о том, как работает garbage collection и о том, как JVM использует память. Поэтому я решил дать вводную в эту тему с наглядным примером. Пост не претендует на то, чтобы покрыть весь объем знаний о garbage collection или настройке JVM (он огромен), ну и, в конце концов, об этом много чего хорошего написано уже в Сети.
          Читать дальше →
        • Нейронки за 5 минут

            Давайте я за 5-10 минут чтения и понимания коротенькой статьи добавлю вам в резюме строчки «машинное обучение» и «нейронные сети»? Тем, кто далек от программирования, я развею все мифы о сложности ИИ и покажу, что большая часть всех проектов на машинном обучении строится на предельно простых принципах. Поехали — у нас всего пять минут.

            Рассмотрим самый базовый пример нейронных сетей — перцептроны; я сам только после этого примера полностью осознал, как работают нейронные сети, так что, если я не накосячу, и вы сможете понять. Помните: никакой магии здесь нет, простая математика уровня пятого класса средней школы.
            Читать дальше →
          • Учим язык, смотря сериалы: vlc + lua + stardict + wordnet + anki = l'amour

              Очень уж мне нравится смотреть сериалы, а еще я учу с их помощью языки. И если раньше я прилежно останавливал видео на непонятном месте, перематывал назад, включал субтитры и забивал незнакомые слова в Анки, то сейчас я делаю то же самое. Разве что лень заставила этот процесс автоматизировать, что привело к созданию расширения Say It Again для проигрывателя VLC со следующими особенностями:

              • Навигация по субтитрам (переход к предыдущей, следующей фразе) — клавиши y, u;
              • Сохранение слова, его транскрипции и перевода вместе с контекстом (см. скриншот) — клавиша i;
              • Функция «Еще раз»: переход к предыдущей фразе, показ субтитра и пауза — клавиша backspace;
              • Подключение любых словарей в формате Stardict (в сети лежат словари из Lingvo x3);
              • Экспорт в Anki или другую программу, понимающую файлы в формате csv;


              Say It Again screenshot


              Зачем все это нужно и как это работает?
            • Знай сложности алгоритмов

              • Translation
              Эта статья рассказывает о времени выполнения и о расходе памяти большинства алгоритмов используемых в информатике. В прошлом, когда я готовился к прохождению собеседования я потратил много времени исследуя интернет для поиска информации о лучшем, среднем и худшем случае работы алгоритмов поиска и сортировки, чтобы заданный вопрос на собеседовании не поставил меня в тупик. За последние несколько лет я проходил интервью в нескольких стартапах из Силиконовой долины, а также в некоторых крупных компаниях таких как Yahoo, eBay, LinkedIn и Google и каждый раз, когда я готовился к интервью, я подумал: «Почему никто не создал хорошую шпаргалку по асимптотической сложности алгоритмов? ». Чтобы сохранить ваше время я создал такую шпаргалку. Наслаждайтесь!
              Читать дальше →
            • Что посмотреть в выходные: 5 фильмов про хакеров



                Создатели фильмов часто допускают ляпы и неточности в вопросах, связанных с технологиями (что приводит, в том числе к появлению постов вида «Почему хакинг в голливудских фильмах ужасен»). Но несмотря на это в мире есть и фильмы о хакерах, которые хочется пересматривать вновь и вновь. Ниже — наша подборка самых интересных историй в этом жанре.
                Читать дальше →
              • Как сделать вашу ИТ-инфраструктуру скучной

                  Майкл ДеХаан – человек, который создал Ansible. Многие вещи, которые делают системные администраторы, релиз- и DevOps-инженеры на регулярной основе, мягко говоря, неинтересны. ДеХаан хочет, чтобы эти люди освободили свое время для более интересных вещей (на работе или за дверью офиса), и написал код продукта, который освобождает время администратора.
                  Больше времени, меньше адреналина в рабочие часы, меньше скриптов и меньше ошибок.
                  Кстати, вы можете закончить чтение на этом абзаце, вместо этого подключившись к livestream 6 июня вот здесь.


                  Читать дальше: Как сделать вашу ИТ-инфраструктуру скучной
                  • +12
                  • 9.9k
                  • 2
                • Где и как изучать машинное обучение?

                  • Tutorial

                  Всем привет!


                  Ни для кого не секрет, что интерес к машинному обучению и искусственному интеллекту растет в лучшем случае по экспоненте. Тем временем мой Яндекс Диск превратился в огромную свалку пейперс, а закладки в Google Chrome превратились в список, длина которого стремится к бесконечности с каждым днем. Таким образом, дабы упростить жизнь себе и вам, решил структурировать информацию и дать множество ссылок на интересные ресурсы, которые изучал я и которые рекомендую изучать вам, если вы только вначале пути (буду пополнять список постоянно).

                  Путь для развития новичка я вижу примерно так:

                  Untitled_presentation
                  Читать дальше →
                • Argparse — парсим аргументы и параметры командной строки с легкостью

                  Начиная с версии Python 2.7, в набор стандартных библиотек была включена библиотека argparse для обработки аргументов (параметров, ключей) командной строки. Хотелось бы остановить на ней Ваше внимание.
                  Читать дальше →
                • Легко ли выступать на конференции в первый раз?



                    У любой конференции по мере роста постепенно накапливаются внешние атрибуты солидности и зрелости: большие залы, профессиональная фото- и видеосъёмка, слайды, наложенные на видеозапись из исходника, а не снятые на камеру, десяток-другой стендов на выставке спонсоров и прочие визитки-брошюрки.

                    В этот же момент возникает одна из болезней роста: новые люди боятся подавать заявки. Не то чтобы совсем пропадают, но их оказывается меньше, чем хотелось бы. Многие, и совершенно напрасно, рассуждают в духе «не с моим рылом в калашный ряд». На примере прошедшего Highload++ давайте посмотрим, насколько тяжело приходится докладчику-новичку. Можно ли с первого раза выступить успешно?

                    Спойлер: можно. Что для этого нужно делать?
                    Статистика, отзывы зрителей и советы новичкам
                  • Мониторинг Elasticsearch через боль и страдания


                      Мы наконец допинали функционал мониторинга elasticsearch до публичного релиза. Суммарно мы переделывали его три раза, так как результат нас не устраивал и не показывал проблемы, которые мы огребали на нашем кластере ES.


                      Под катом история про наш production кластер, наши проблемы и наш новый мониторинг ES.

                      Читать дальше →
                      • +34
                      • 22.1k
                      • 6
                    • Когда работа — твоя вторая семья



                        Доброго времени суток.

                        Когда три года работаешь на одном проекте, в одной команде, то выходить из него больно и это больше похож на уход из семьи, чем рядовое увольнение рядового сотрудника. Если приводить метафору — когда начинаешь, то думаешь «вот она, моя единственная, одна и на всю жизнь», а когда заканчиваешь — «все женщины одинаковы».
                        Здесь явно не формат и отличается от моих предыдущих заметок, но где еще найти такое количество технических ребят, у которых можно узнать мнение?
                        В понедельник мне пришлось, несмотря на беременность жены, закрыть контракт и уйти с позиции технического директора проекта. Добро пожаловать в клуб безработных! Теперь, пролистывая вакансии на hh/мойкруг, трудно поверить в них и кажется, что за ними скрываются похожие проблемы и вернуть веру довольно трудно.

                        Под катом будут ретроспективные пару причин о том, как я докатился до жизни такой, хоть и через неделю платить арендную плату/нужно покупать хлеб. Здесь лично моя боль, не совсем формат, но вдруг этот натолкнет кого-то на какие-то мысли. В любом случае каждый воспринимает этот мир через свои собственные цветные очки.
                        Читать дальше →
                      • Автономный способ обхода DPI и эффективный способ обхода блокировок сайтов по IP-адресу

                          Провайдеры Российской Федерации, в большинстве своем, применяют системы глубокого анализа трафика (DPI, Deep Packet Inspection) для блокировки сайтов, внесенных в реестр запрещенных. Не существует единого стандарта на DPI, есть большое количество реализации от разных поставщиков DPI-решений, отличающихся по типу подключения и типу работы.

                          Существует два распространенных типа подключения DPI: пассивный и активный.

                          Пассивный DPI

                          Пассивный DPI — DPI, подключенный в провайдерскую сеть параллельно (не в разрез) либо через пассивный оптический сплиттер, либо с использованием зеркалирования исходящего от пользователей трафика. Такое подключение не замедляет скорость работы сети провайдера в случае недостаточной производительности DPI, из-за чего применяется у крупных провайдеров. DPI с таким типом подключения технически может только выявлять попытку запроса запрещенного контента, но не пресекать ее. Чтобы обойти это ограничение и заблокировать доступ на запрещенный сайт, DPI отправляет пользователю, запрашивающему заблокированный URL, специально сформированный HTTP-пакет с перенаправлением на страницу-заглушку провайдера, словно такой ответ прислал сам запрашиваемый ресурс (подделывается IP-адрес отправителя и TCP sequence). Из-за того, что DPI физически расположен ближе к пользователю, чем запрашиваемый сайт, подделанный ответ доходит до устройства пользователя быстрее, чем настоящий ответ от сайта.
                          Читать дальше →
                        • Почему опытные разработчики пишут тупой код и как распознать новичка за километр

                          Предлагаю читателям «Хабрахабра» перевод публикации «Why Senior Devs Write Dumb Code and How to Spot a Junior From A Mile Away» за авторством Scott Shipp.


                          Одна из моих любимых цитат на все времена — Брайана Гетца (Brian Goetz), умнейшего чувака из мира Java, одного из авторов «Java Concurrency in Practice», кроме всего прочего. Цитата взята из интервью, опубликованного на сайте Oracle под заголовком «Пишите тупой код» («Write Dumb Code»). Гетца спросили, как писать хорошо работающий код.
                          Вот что он ответил
                        • Хочется взять и расстрелять, или ликбез о том, почему не стоит использовать make install

                            К написанию сей заметки меня сподвигло то, что я устал делать развёрнутые замечания на эту тему в комментариях к статьям, где в качестве части инструкции по сборке и настройке чего-либо для конкретного дистра предлагают выполнить make install.
                            Суть сводится к тому, что эту команду в виде «make install» или «sudo make install» использовать в современных дистрибутивах нельзя.

                            Но ведь авторы программ в руководствах по установке пишут, что нужно использовать эту команду, возможно, скажете вы. Да, пишут. Но это лишь означает, что они не знают, какой у вас дистрибутив, и дистрибутив ли это вообще, может, вы вступили в секту и обкурилисьчитались LFS и теперь решили под свою хтоническую систему скомпилять их творение. А make install является универсальным, хоть и зачастую неправильным способом это сделать.

                            Читать дальше →
                          • Движок микроблоггинга Reactor

                              image
                              Все началось с того, что мы решили сделать свой микроблоггинговый сервис. Покопались в интернетах в поисках более-менее подходящего готового движка микроблоггинга, толком ничего не нашли. Потом рассмотрели кандидатуру движков обычного блоггинга — Wordpress, LiveStreet, BigStreet. Мы уже немного работали с ними, и решили не использовать в виду их архитектурных недостатков (наше ИМХО). Оставалось сделать что-то свое, но не с нуля, а используя фреймворк Symfony в связке с ORM Doctrine.

                              Будем краткими.
                              # Что это? — Движок микроблоггинга с картинками и настроениями, альфа версия. Пример работы движка — http://joyreactor.ru/
                              Читать дальше →