środa, 24 czerwca 2009

Eclipse Galileo is Here:) CTRL + SHIFT + L

Tak naprawdę to wpis miał dotyczyć tylko jednej kombinacji w Eclipse a mianowicie CTRL (w macu jabłuszko) + SHIFT + L która ciągle mi z głowy jakoś wylatuje, a zawiera wszystkie potrzebne skróty klawiszowe w Eclipse.
Ale, że przy okazji mamy dzisiaj kolejne wydanie Eclipse o nazwie Galileo przetestuje czy tam ten skrót też działa:)

No jak widać na moim Mac OS 10.4.11 nie udało mi się uruchomić nowego Eclipse:/
Więc zostaje stara wysłużona wersja :) przynajmniej do zmiany systemu:)

CTRL+SHIFT+L :)

sobota, 20 czerwca 2009

11. Spotkanie Śląskiej Grupy Użytkowników Technologii Java ( Silesia JUG )

Śląska Grupa Użytkowników Technologii Java (Silesia JUG) serdecznie zaprasza wszystkich na jedenaste spotkanie, które odbędzie się 30.06.2009 o godzinie 18:30 w COIG (Centralny Ośrodek Informatyki Górnictwa S.A.) w sali 136 na pierwszym piętrze, ul.Mikołowska 100 w Katowicach.

Temat: JBoss Cloud
Prowadzący: Marek Goldmann

Info:
JBoss Cloud to projekt mający na celu stworzenie gotowego do użycia klastra serwerów aplikacji JBoss AS. Za pomocą JBoss Cloud można uruchomić klaster na wybranej przez siebie platformie wirtualizacji: np. Xen, VMware, EC2.

JBoss Cloud składa się z kilku obrazów systemów; m.in.: front-end (zapewniający rozkładanie obciążenia), back-end (faktyczny serwer JBoss AS), które mogą zostać uruchomione w dowolnej ilości. Obrazy można tworzyć samemu.

Prezentacja ma na celu wprowadzenie do projektu JBoss Cloud, pokaże w jaki sposób można wykorzystać go do swoich potrzeb. Na koniec przedstawione zostaną możliwości dostosowywania JBoss Cloud.

UWAGA! W trakcie prezentacji zostaną rozlosowane koszulki JBoss’a!

Jeżeli będzie zainteresowanie ze strony słuchaczy zostanie również przedstawiona krótka relacja z konferencji JavaOne w San Francsico.

Marek Goldmann, pasjonat otwartych technologii i standardów, entuzjasta projektów na nich opartych. Miłośnik wirtualizacji. Software Engineer pracujący nad projektem JBoss Cloud w firmie JBoss by Red Hat. Marek zaangażowany jest również w kreślenie nowych kierunków rozwoju projektu jak i Cloud Computing w firmie JBoss.

Po prezentacji (1,5h) odbędzie się krótka pogawędka (15 - 30 minut). Po prezentacji pytania dla obecnych, gdzie będzie można wygrać:
a. IntelliJ IDEA Personal License
b. ReSharper Personal License
c. TeamCity Build Agent
d. Ruby IDE Personal License

Wstęp wolny!

Zapraszam wszystkich w imieniu Marka i Silesia JUG

środa, 10 czerwca 2009

Log4j i Chainsaw

Pewno każdy z was musiał kiedyś czytać logi czy to swoje czy odziedziczone w spadku:) dzisiaj postanowiłem przyjrzeć się narzędziu Chainsaw które umożliwia monitorowanie logów.
A więc zaczynamy, ściągamy program Chainsaw tutaj.
No i zaczynamy zabawę (obraz który dostajemy po uruchomieniu programu).
Wybieramy "Let me define Receivers manually" i klikamy "OK".
Teraz dobrze by było żeby podłączyć naszego Chainsaw do jakiegoś zewnętrznego repozytorium logów np. do logów z serwera mule. Więc idziemy teraz do pliku $MULE_HOME/conf/log4j.properties i dodajemy możliwość podłączenia się przez SocketHubAppender do log4j naszego lokalnego (lub zewnętrznego) mule (zmienione linie to 02,09,10).
  1. # Default log level  
  2. log4j.rootCategory=INFO, console, sockethub  
  3.   
  4. log4j.appender.console=org.apache.log4j.ConsoleAppender  
  5. log4j.appender.console.layout=org.apache.log4j.PatternLayout  
  6. log4j.appender.console.layout.ConversionPattern=%-5p %d [%t] %c: %m%n  
  7.   
  8.   
  9. log4j.appender.sockethub=org.apache.log4j.net.SocketHubAppender  
  10. log4j.appender.sockethub.port=9999  
  11.   
  12. ################################################  
  13. # You can set custom log levels per-package here  
  14. ################################################  
  15.   
  16. # Apache Commons tend to make a lot of noise which can clutter the log.  
  17. log4j.logger.org.apache=WARN  
  18.   
  19. # Shuts up some innocuous messages if using the JBPM transport  
  20. log4j.logger.org.hibernate.engine.StatefulPersistenceContext.ProxyWarnLog=ERROR  
  21.   
  22. # Reduce startup noise  
  23. log4j.logger.org.springframework.beans.factory=WARN  
  24.   
  25. # Mule classes  
  26. log4j.logger.org.mule=INFO  
  27. log4j.logger.com.mulesource=INFO  
  28.   
  29. # Your custom classes  
  30. log4j.logger.com.mycompany=DEBUG  

Teraz uruchamiamy mule i sprawdzamy czy faktycznie port 9999 działa
  1. lukasz-lipkas-computer:~ lipka$ telnet 127.0.0.1 9999  
  2. Trying 127.0.0.1...  
  3. Connected to localhost.  
  4. Escape character is '^]'.  
  5. ??  

Teraz podłączamy nasz program:
I teraz już tylko zostaje podziwianie logów:)
Rzecz która mi się najbardziej podoba to możliwość przeglądania logów według poszczególnych poziomów takich jak:

Dla mnie największe plusy Chainsaw to:
  • możliwość logowania na zewnętrzne IP i wizualne odczytywanie logów
  • możliwość podłączenia wielu logów z różnych maszyn (programów)
  • graficzny interfejs
Alternatywa:
ssh na zewnętrzną maszynę i potem przejść do katalogu gdzie są logi i komenda:
  1. lukasz-lipkas-computer:~/Library/mule-2.2.1/logs lipka$ cat mule.log|grep INFO  
  2. INFO  2009-05-18 19:41:34,134 [jdbcConnector.receiver.16] org.mule.DefaultExceptionStrategy: There is no current event available, routing Null message with the exception  
  3. INFO  2009-05-18 19:41:34,254 [jdbcConnector.receiver.16] org.mule.DefaultExceptionStrategy: There is no current event available, routing Null message with the exception  

A dlaczego taki temat ? Jest to krótkie streszczenie rozdziały ósmego z książki Mule in Action.
A to mój mały wkład w poprawienie finalnej wersji książki tutaj i tutaj. Po za tym 4 lipca na JAVArsowia będę miał przyjemność przedstawić temat Mule - Open Source ESB - SOA and Integration Platform (czyli jak to wszystko razem działa) zapraszam wszystkich serdecznie.