Enable logback in JBoss

About 10 years ago log4j was the logging framework for java. Years passed and many logging frameworks emerged. For many people, including myself, logback is the new log4j (and that is not only because of Ceki).

Unfortunately it is not possible to run logback as slf4j implementation OOTB in JBoss like in Tomcat. The following 5 steps explain you how to get it running.

Continue reading

The Road to IntelliJ IDEA

When it comes to choosing an IDE for Java development, people usually face a challenge of having to pick one from the three main players: IntelliJ IDEA, Eclipse or NetBeans.

The point of this topic is not to start another “the best IDE holy war”, but to share our own personal experience. Of course, the best tool is the one that gives you maximal productivity and that choice is always subjective. Period.

Originally, almost all of us here at Anotheria started the journey with Eclipse. It was free and did the job pretty well. Everyone got used to it and switching to another tool did not make sense at the time.

Things changed at the end of 2009, when JetBrains open sourced IntelliJ IDEA  and offered a new Community Edition version completely free of charge. Not to try it would have been a crime.

Result exceeded the expectations even of the biggest skeptics. Autocomplete was magical: sometimes it felt like like IDEA knew what statement you wanted to write next. Core editor features, debugger, external tool support  – they were all amazing as well. IntelliJ IDEA was definitely the most intelligent tool we had ever used.

During that time we were transitioning our open source project to Maven. Of course, build tool support was of critical importance. We used M2Eclipse for Maven integration but were hardly satisfied with it. After trying IDEA which had great built-in Maven support, there was no going back.

Today IntelliJ IDEA is the number one tool for us. Not only for Java development. Front-end guys use it for their HTML/CSS/JS work as well. And they are happy with it!

Recently, 14-th version was released. It came out with a number of big new features (improved debugger, built-in decompiler, etc). However, one of the most anticipated additions personally for me was the improved Scala support, which was worth waiting. So now if you need an IDE with SBT integration or want to build your next web application with Play Framework – I would definitely recommend you to check out IntelliJ IDEA.

Case Study: Monitoring a cluster of java daemon processes

Hello,

today I am going to speak about a concrete example of the MoSKito Control capabilities. Today we will build up a monitoring system, but not for WebApps as in previous posts, but for just plain java processes, that we are going to call daemons. Daemon, in my understanding, is just a plain old java bean/thread running in background in a separate JVM and doing some work. To make the post easier to write I created a small project on github that serves me as example:

https://github.com/dvayanu/moskito-control-rmi-cluster-example

Continue reading

The complete MoSKito integration guide – Step 6 – Watching the big app with MoSKito-Control

Quote

In all previous steps, we integrated MoSKito into our application and set up data storage. In simple words, we learned how to monitor our app’s performance and store the obtained MoSKito data for later analysis. What’s next?

Here’s the good news: our burgershop is now the world’s leading burger-seller, with million revenues. It has become a big distributed app, with multiple instances and servers.
The bad news: even the smallest fail might lead to a thousand-euro loss per minute.

The question: how to keep trace of hundreds of producers on a dozen of instances? It’s the moment to call Superman another hero!

So, today we’re setting up MoSKito-Control, a tool for monitoring multi-node web applications.

moskito_control

Continue reading

The complete MoSKito integration guide – Step 5 – MoSKito-Central in remote mode

In the previous step we integrated MoSKito-Central in embedded mode, today is exactly the promised fine day to integrate MoSKito-Central in remote (standalone) mode.

You may ask “Why do we need it?”,  the answer is: our burgershop has become a real empire with multiple application instances and we want to monitor all of them and consolidate the obtained performance data in one place.

So, let’s start!
Continue reading

The complete MoSKito integration guide – Step 4 – Central storage

Today we are going to unlock even more MoSKito power: more persisting, more centralising.

As you know, we can access MoSKito producer’s statistics while application is running: http://localhost:8080/burgershop/mui/mskShowAllProducers.

But what if: 

  • we want to check statistics for some time ago, like the last night, when we were sleeping?
  • we want to have and check statistics for all our applications, not only a single burgershop (as good businessmen, we surely have various projects to be safe from total fail one day!)?
  • we want to automatically analyse the collected (in time and space) data and make
    some strategical changes, based on results of this analysis?

The answer to all these if’s is: MoSKito-Central.

Continue reading

Id Based Locking

We ‘invented’ (at least we say we invented it, until someone else claims the authorship), that kind of locking, where you lock not an object itself, but what the object means in the real world (or at least in your domain). It was long part of the ano-utils project. However ano-utils is a bit bloated, so we refactored it into a small separate project, without any further dependencies to external libs.

I will not repost the explanations why it is needed and what it does, instead just a link to  the github page, that explains everythinghttps://github.com/anotheria/idbasedlock

Lock on!

MoSKito Seasonal Greetings

Dear MoSKito-rians and those to become MoSKitorians in the next year!

This year was very successful for MoSKito: about 15 releases, multiple conference and press appearances, and a lot of user activity, especially by the end of the year. All of this makes us really proud of our project.

Merry MoSKito Christmas

Looking back at our achievements, we are holding still for a moment to enjoy the Quietness of the next two weeks before the next year, which promises to be even more inspiring and exciting.

We would like to use this moment and wish you quiet, recreative and contemplative holidays and a very successful 2014.

Leon Rosenberg and the MoSKito Team.