Как стать автором
Обновить

Напильники бывают разные или повествование про «напильник» для java программ

Время на прочтение 6 мин
Количество просмотров 20K
Разработка веб-сайтов *Программирование *Java *
В практике java программиста бывает, что очень хочется изменить поведение программы или «подхачить» пару классов без перепаковки приложения, собрать метрики или протестировать java приложение в недрах сторонней библиотеки или jdbc драйвера без исходного кода. Существует несколько способов сделать это. Я расскажу про open source проект aspectj-scripting, который позволяет решать такие задачи в jvm.



Рассказ про aspectj-scripting будет в нескольких публикациях. Начнем с практики! Под катом модификация поведения maven-changes-plugin без его пересборки и перекомпиляции для выгрузки списка задач из JIRA в файлы xml и json
Читать дальше →
Всего голосов 12: ↑11 и ↓1 +10
Комментарии 16

Аспектно-ориентированное программирование. Основы

Время на прочтение 4 мин
Количество просмотров 41K
Разработка веб-сайтов *Open source *Программирование *Java *
Продолжим тему, начатую в прошлой слесарно-программистской статье про AspectJ и open source расширение для этой библиотеки aspectj-scripting. В этой заметке рассмотрим какие задачи решает аспектно-ориентированное программирование (AOP) на примере и синтаксисе самой известной библиотеки среди адептов этой методологии. AspectJ — дитя Xerox PARC, теперь совершеннолетнее и живущее в Eclipse Foundation.


(фото из статьи на lurkmore про евроремонт)

Вероятно, статья не будет интересна тем кто часто использует в своей работе AOP и понимает что это такое. В комментариях приветствуются как конструктивные замечания так и веселый холивар!

Disclaimer: Я не теоретик, поэтому рассказанное в статье субъективно, пропущено через призму опыта.
Читать дальше →
Всего голосов 21: ↑15 и ↓6 +9
Комментарии 15

Внедрение веб консолей в jvm процесс на примере SonarQube

Время на прочтение 5 мин
Количество просмотров 11K
Разработка веб-сайтов *Open source *Java *
Туториал
По аналогии с примером из этой статьи, вы сможете внедрить консоль hawtio в свое jvm приложение без его пересборки и перекомпиляции. А также в случае с DEV/QA хостами внедрить в java процесс SQL веб консоль из проекта H2


Скринкасты, описание процесса и краткий обзор компонент...
Всего голосов 9: ↑8 и ↓1 +7
Комментарии 0

Протоколирование JDBC запросов и их параметров в существующем приложении

Время на прочтение 4 мин
Количество просмотров 12K
Разработка веб-сайтов *Open source *Программирование *Java *


В публикации рассмотрим как можно внедрить логирование jdbc операций в существующее приложение без его пересборки и перекомпиляции. Это даст возможность протоколировать параметры запросов, которые заполняет программа, и многие другие аспекты работы с jdbc.
Описание процесса и скринкаст...
Всего голосов 17: ↑16 и ↓1 +15
Комментарии 0

Публикация логов в Elasticsearch — жизнь без регулярных выражений и без logstash

Время на прочтение 5 мин
Количество просмотров 25K
Разработка веб-сайтов *Поисковые технологии *Open source *Программирование *Java *

При использовании подхода из данного решения парсинг файлов будет не нужен. При изменении формата логирования или появлении новых сообщений не нужно поддерживать большой набор регулярок. Будем перехватывать вызовы методов error, warn, info, debug, trace логера и отправлять данные сразу в elasticsearch. С этим нам поможет аспектно-ориентированное программирование!
Программа, конфигурация и скринкаст...
Всего голосов 12: ↑10 и ↓2 +8
Комментарии 22

Доклад: «Аспектно-ориентированное программирование в распределенных системах для java разработчиков и QA»

Время на прочтение 2 мин
Количество просмотров 8.3K
Разработка веб-сайтов *Open source *Программирование *Java *

Под катом — краткое описание доклада про аспектно-ориентированное программирование и применение AspectJ-scripting, а также ссылки на материалы по теме и видеозапись выступления.
Читать дальше →
Всего голосов 10: ↑8 и ↓2 +6
Комментарии 0

Диагностируем причину, выживаем в JAR hell: не дышим серой и не варимся в котле

Время на прочтение 6 мин
Количество просмотров 19K
Разработка веб-сайтов *Open source *Программирование *Java *
Бывает что в крупном проекте работающем в jvm, внезапно обнаруживается что приложение не работает и даже не запускается при обновлении какой-либо из зависимостей проекта. Такое же возможно из-за любого другого события, которое изменило порядок следования библиотек в classpath приложения.


Добро пожаловать в JAR hell
Всего голосов 19: ↑17 и ↓2 +15
Комментарии 0

DevOps: отправляем метрики и спим спокойно

Время на прочтение 9 мин
Количество просмотров 18K
Open source *Программирование *Java *Groovy & Grails *


Внезапно, ночью раздается звонок и мы узнаем что наше приложение не работает. Есть 2 часа на его реанимацию…
Где же наш мониторинг и логи программы!?
Всего голосов 14: ↑13 и ↓1 +12
Комментарии 2