Mostra notizie nelle discussioni
  • Avatar
    ☺
    Scritto da
    ::1
    il 2015-04-23 22:11:16.0 alle 2015-04-23 22:11:16.0
    Trollate totali: 12321
    [java] oggi ho fatto una cosa difficile
    Il sistema informatico su cui lavoro è piuttosto grande, e la qualità del codice e dei programmatori è scarsina.
    Questo nel tempo ha portato a situazioni particolarmente difficili da diagnosticare, per questo abbiamo approntato man mano delle utility che usiamo sugli ambienti di supporto per individuare problematiche prima della messa in produzione.
    Purtroppo alcuni cambi nei processi decisionali hanno portato un incremento del crappy code, e ci sono sempre più deroghe sulle applicazioni a non seguire gli standard di sviluppo.
    Quello che succede è che le utility di cui sopra diventano man mano meno efficaci.
    Così ieri mi è venuta in mente una soluzione che ho realizzato oggi e che sembra piuttosto promettente.
    Ho scritto un agent con le instrumentation api di java, che si inserisce nella fase di classloading e altera il bytecode delle classi (usando la libreria javassist) per iniettare codice.
    Devo dire che la documentazione è scarsissima, inoltre i classloader nested di websphere sono un casino da gestire (ho dovuto richiamare log4j via reflection usando il context classloader del thread perché se la metti in lib/ext ti si mischiano i logger!); ma il risultato è decisamente interessante.
    L'utility che ho fatto oggi fa delle ispezioni negli oggetti all'interno delle sessioni utente, ma è una tecnica interessante che potrei espandere anche in altre situazioni.
    Young professional woman and busy mom.
    • Avatar
      ☺
      Scritto da
      avvelentani
      Cubicolario
      il 2015-04-23 22:15:45.0 alle 2015-04-23 22:15:45.0
      Trollate totali: 18184
      Re: [java] oggi ho fatto una cosa difficile
      Scritto da: ::1
      > Il sistema informatico su cui lavoro è piuttosto grande, e la qualità del codice e dei programmatori è scarsina.
      > Questo nel tempo ha portato a situazioni particolarmente difficili da diagnosticare, per questo abbiamo approntato man mano delle utility che usiamo sugli ambienti di supporto per individuare problematiche prima della messa in produzione.
      > Purtroppo alcuni cambi nei processi decisionali hanno portato un incremento del crappy code, e ci sono sempre più deroghe sulle applicazioni a non seguire gli standard di sviluppo.
      > Quello che succede è che le utility di cui sopra diventano man mano meno efficaci.
      > Così ieri mi è venuta in mente una soluzione che ho realizzato oggi e che sembra piuttosto promettente.
      > Ho scritto un agent con le instrumentation api di java, che si inserisce nella fase di classloading e altera il bytecode delle classi (usando la libreria javassist) per iniettare codice.
      > Devo dire che la documentazione è scarsissima, inoltre i classloader nested di websphere sono un casino da gestire (ho dovuto richiamare log4j via reflection usando il context classloader del thread perché se la metti in lib/ext ti si mischiano i logger!); ma il risultato è decisamente interessante.
      > L'utility che ho fatto oggi fa delle ispezioni negli oggetti all'interno delle sessioni utente, ma è una tecnica interessante che potrei espandere anche in altre situazioni.

      Perplesso
      I think happiness is love
      - Vladimir Putin
<softv>

Pagina generata in 129 millisecondi

Utenti attivi: 8 nell'ultimo minuto, 22 negli ultimi cinque minuti, 43 negli ultimi 15 minuti