--
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes lescastcodeurs.
Pour envoyer un message à ce groupe, adressez un e-mail à lescast...@googlegroups.com.
Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse lescastcodeur...@googlegroups.com.
Pour plus d'options, consultez la page de ce groupe : http://groups.google.com/group/lescastcodeurs?hl=fr
--
Nicolas Delsaux
--
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes lescastcodeurs.
Pour envoyer un message à ce groupe, adressez un e-mail à lescast...@googlegroups.com.
Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse lescastcodeur...@googlegroups.com.
Pour plus d'options, consultez la page de ce groupe : http://groups.google.com/group/lescastcodeurs?hl=fr
On 12/04/2012 10:38 PM, Julien Ponge wrote:
C'est marrant que tu sois concerné par la taille des jars commeÀ propos de logging en avec un jar de taille réduite et sans
critère de choix.
dépendances je recommande TinyLog http://www.tinylog.org
Pas de fichier XML étrange, une API sans fioritures, une configuration
flexible. Parfait, surtout quand il ne faut pas s'intégrer avec des
loggers de meta-loggers de loggers par dessus les loggers.
- Julien
tinylog démarre une thread en tache de fond qui fait les écritures, c'est rapide mais quand la VM crash tu as perdu les derniers logs, ceux qui sont intéressant. donc c'est vraiment moyen en production, enfin peut-être que je suis le seul à faire crasher la VM assez régulièrement*
Rémi
*ok, ok, souvent c'est de ma faute.
--
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes lescastcodeurs.
Pour envoyer un message à ce groupe, adressez un e-mail à lescastcodeurs@googlegroups.com.
Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse lescastcodeurs+unsubscribe@googlegroups.com.
Ben ouais mais netflix n'aurait pas pu buzzer ainsi ni "s'approprier" le code...
--
Olivier
--
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes lescastcodeurs.
Pour envoyer un message à ce groupe, adressez un e-mail à lescast...@googlegroups.com.
Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse lescastcodeur...@googlegroups.com.
On 12/04/2012 10:38 PM, Julien Ponge wrote:
C'est marrant que tu sois concerné par la taille des jars commeÀ propos de logging en avec un jar de taille réduite et sans
critère de choix.
dépendances je recommande TinyLog http://www.tinylog.org
Pas de fichier XML étrange, une API sans fioritures, une configuration
flexible. Parfait, surtout quand il ne faut pas s'intégrer avec des
loggers de meta-loggers de loggers par dessus les loggers.
- Julien
tinylog démarre une thread en tache de fond qui fait les écritures, c'est rapide mais quand la VM crash tu as perdu les derniers logs, ceux qui sont intéressant. donc c'est vraiment moyen en production, enfin peut-être que je suis le seul à faire crasher la VM assez régulièrement*
Rémi
*ok, ok, souvent c'est de ma faute.
--
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes lescastcodeurs.
On 12/05/2012 08:42 AM, Julien Ponge wrote:
oui, mais activer la thread de log par défaut pour pouvoir dire mon framework est plus rapide que les votres alors qu'en prod il faut le désactiver me semble limite intelectuellement parlant.Très juste. Après tu peux aussi désactiver le thread de log :http://www.tinylog.org/user-manual
Rémi
On Wednesday, December 5, 2012, Remi Forax wrote:
On 12/04/2012 10:38 PM, Julien Ponge wrote:
C'est marrant que tu sois concerné par la taille des jars
comme
critère de choix.
À propos de logging en avec un jar de taille réduite et sans
dépendances je recommande TinyLog http://www.tinylog.org
Pas de fichier XML étrange, une API sans fioritures, une
configuration
flexible. Parfait, surtout quand il ne faut pas s'intégrer
avec des
loggers de meta-loggers de loggers par dessus les loggers.
- Julien
tinylog démarre une thread en tache de fond qui fait les
écritures, c'est rapide mais quand la VM crash tu as perdu les
derniers logs, ceux qui sont intéressant. donc c'est vraiment
moyen en production, enfin peut-être que je suis le seul à faire
crasher la VM assez régulièrement*
Rémi
*ok, ok, souvent c'est de ma faute.
-- Vous recevez ce message, car vous êtes abonné au groupe Google
Groupes lescastcodeurs.
Pour envoyer un message à ce groupe, adressez un e-mail à
lescastcodeurs@googlegroups.com.
Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse
lescastcodeurs+unsubscribe@googlegroups.com.
Pour plus d'options, consultez la page de ce groupe :
http://groups.google.com/group/lescastcodeurs?hl=fr
--
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes lescastcodeurs.
Pour envoyer un message à ce groupe, adressez un e-mail à lescastcodeurs@googlegroups.com.
Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse lescastcodeurs+unsubscribe@googlegroups.com.
Pour plus d'options, consultez la page de ce groupe : http://groups.google.com/group/lescastcodeurs?hl=fr
--
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes lescastcodeurs.
Pour envoyer un message à ce groupe, adressez un e-mail à lescastcodeurs@googlegroups.com.
Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse lescastcodeurs+unsubscribe@googlegroups.com.
On 12/05/2012 08:42 AM, Julien Ponge wrote:
Très juste. Après tu peux aussi désactiver le thread de log :http://www.tinylog.org/user-manual
oui, mais activer la thread de log par défaut pour pouvoir dire mon framework est plus rapide que les votres alors qu'en prod il faut le désactiver me semble limite intelectuellement parlant.
Rémi
On Wednesday, December 5, 2012, Remi Forax wrote:
On 12/04/2012 10:38 PM, Julien Ponge wrote:
C'est marrant que tu sois concerné par la taille des jars
comme
critère de choix.
À propos de logging en avec un jar de taille réduite et sans
dépendances je recommande TinyLog http://www.tinylog.org
Pas de fichier XML étrange, une API sans fioritures, une
configuration
flexible. Parfait, surtout quand il ne faut pas s'intégrer
avec des
loggers de meta-loggers de loggers par dessus les loggers.
- Julien
tinylog démarre une thread en tache de fond qui fait les
écritures, c'est rapide mais quand la VM crash tu as perdu les
derniers logs, ceux qui sont intéressant. donc c'est vraiment
moyen en production, enfin peut-être que je suis le seul à faire
crasher la VM assez régulièrement*
Rémi
*ok, ok, souvent c'est de ma faute.
-- Vous recevez ce message, car vous êtes abonné au groupe Google
Groupes lescastcodeurs.
Pour envoyer un message à ce groupe, adressez un e-mail à
lescast...@googlegroups.com.
Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse
lescastcodeur...@googlegroups.com.
Pour plus d'options, consultez la page de ce groupe :
http://groups.google.com/group/lescastcodeurs?hl=fr
--
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes lescastcodeurs.
Pour envoyer un message à ce groupe, adressez un e-mail à lescast...@googlegroups.com.
Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse lescastcodeur...@googlegroups.com.
Pour plus d'options, consultez la page de ce groupe : http://groups.google.com/group/lescastcodeurs?hl=fr
--
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes lescastcodeurs.
Pour envoyer un message à ce groupe, adressez un e-mail à lescast...@googlegroups.com.
Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse lescastcodeur...@googlegroups.com.
Pour envoyer un message à ce groupe, adressez un e-mail à lescast...@googlegroups.com.
Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse lescastcodeur...@googlegroups.com.
--
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes lescastcodeurs.
Pour envoyer un message à ce groupe, adressez un e-mail à lescastcodeurs@googlegroups.com.
Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse lescastcodeurs+unsubscribe@googlegroups.com.
Pour plus d'options, consultez la page de ce groupe : http://groups.google.com/group/lescastcodeurs?hl=fr
Le 05/12/2012 12:20, Emmanuel L�charny a �crit :
> Le 12/5/12 12:07 PM, Damien B a �crit :
>> Le 05/12/2012 11:50, Emmanuel L�charny a �crit :
>>> Le probl�me n'est pas la taille des jars embarqu�s... Le pb, c'est que
>>> vous diffusez un package � trop d'endroit, sur un r�seau trop serr�.
>>>
>>> C'est comme acheter de plus grandes bassines parce que tu as une fuite
>>> chez toi...
>> Ben justement : je ne suis pas chez moi :-) Apr�s on peut toujours
>> discuter de la n�cessit� d'avoir le package � "trop" d'endroits (et
>> tous les liens ne sont pas serr�s, mais il y a des goulots c'est s�r),
>> toujours est-il que dans une approche d'am�lioration continue, c'est
>> bien que chacun y mette du sien et enl�ve le gras, c'est aussi �a
>> l'approche lean :-)
> En modifiant ta livraison pour "r�soudre" les pb r�seau, tu modifies le
> comportement de ton appli
Je ne modifie pas ma livraison pour r�soudre les probl�mes r�seau : je
construis (m�me si le plus souvent c'est de la reprise et pas de la
construction) une application qui d�pend d'un socle, et plut�t que de
dire "ouais, encore un truc de niaiseux, je vais tout embarquer au cas
o�", je dis "profitons-en, et en plus �a r�duit la taille du livrable,
tout b�nef".
> : maintenant, elle d�pend de packages fournis
> par ton serveur d'application, au lieu d'�tre standalone.
Il faut tracer une ligne quelque part : quel besoin d'embarquer JTA,
Mail, JAX-WS, etc.. exactement ? "Standalone" �a n'est pas un absolu, tu
d�pends toujours d'une version minimale du JRE (et ce n'est pas quelque
chose de mineur en terme de complexit�), et dans le cas pr�sent, d'un
serveur d'application avec un certain niveau de compatibilit� avec une
version sp�cifique de JavaEE (ce qui est loin d'�tre mineur aussi). Et
puis pourquoi �viter cette d�pendance quand, dans ce contexte toujours,
c'est un entrant du syst�me et pas une variable ?
> C'est quand m�me la garantie de pb potentiels le jour o� tu bascules vers une
> nouvelle version/ un autre serveur.
Dans ce cas-l� on embarque le serveur d'application, et la JVM aussi au
passage ? Ha non on ne peut pas, �a met une d�pendance sur l'OS. Et la
bascule vers une nouvelle version / un autre serveur, dans ce contexte,
c'est un chantier autrement plus important que r�soudre les probl�mes de
descripteur de d�ploiement sp�cifiques ou de mont�e de version des
d�pendances ou comportement "exotiques" des classloaders.
> Contourner un pb n'est pas le r�soudre...
Pour �a il faudrait commencer par �noncer le probl�me :-D Je commentais
par rapport � une interrogation g�n�rique par rapport � la taille des
jars, et c'est toi qui r�duit �a � une probl�matique de lien r�seau :-)
On peut parler aussi de la vitesse de d�marrage serveur, de la facilit�
de d�bogage, de l'empreinte m�moire de l'appli, de l'entr�e d'un nouveau
d�veloppeur sur l'appli, etc...
Pack200 ça date du JRE 1.5 pour le support dans JWS, le seul truc c'est que ça n'est pas supporté en natif dans le JRE au niveau du classloader, d'où le fait que ça soit peu répandu (et que les gens ne s'intéressent plus aux tailles des jars non plus ;-P ). L'avantage du pack200 c'est qu'il travaille en connaissant le bytecode et pas sur un paquet opaque d'octets, d'où l'efficaité. La doc de l'époque l'explique pas mal :
<groupId>org.codehaus.mojo</groupId><artifactId>webstart-maven-plugin</artifactId><version>1.0-beta-3</version><executions><execution><phase>package</phase><goals><goal>jnlp</goal></goals></execution></executions><configuration><jnlpFiles>${jrebirth.jnlp.filename}</jnlpFiles><excludeTransitive>false</excludeTransitive><libPath>lib</libPath><resourcesDirectory>${project.basedir}/src/main/jnlp/resources</resourcesDirectory><codebase>${deployUrl}/${deployPath}</codebase><jnlp><!-- <inputTemplateResourcePath>${project.basedir}</inputTemplateResourcePath> <inputTemplate>src/main/jnlp/template.vm</inputTemplate> --><outputFile>${jnlpFilename}</outputFile><mainClass>${appClass}</mainClass><offlineAllowed>true</offlineAllowed></jnlp><sign><keystore>${basedir}/jrebirth.jks</keystore><keypass>${keypass}</keypass><storepass>${storepass}</storepass><!-- <storetype>fillme</storetype> --><alias>jrebirth</alias><validity>360</validity><dnameOu>None</dnameOu><dnameO>JRebirth</dnameO><dnameL>Toulouse</dnameL><dnameSt>HG</dnameSt><dnameC>FR</dnameC><verify>true</verify><keystoreConfig><delete>true</delete><gen>true</gen></keystoreConfig></sign><pack200>true</pack200><gzip>true</gzip><outputJarVersions>false</outputJarVersions><install>false</install><verbose>true</verbose></configuration></plugin>
Salut !
ça fait longtemps, mais je pense que passé septembre, tout le monde est
en pleine brasse coulée...
On discutait récemment des loggers, un serpent de mer(de) qui revient
souvent dans les conversations. Log4j, JUL, JULI, slf4j, logback,
log4j2, clog, tinylog, on a un chiée de loggers existants et plus
personne ne sait ou donner de la tête, c'est style pire que les nouveaux
langages qui fleurissent tous les jours. Sans compter les ceusses qui ne
jurent que par System.out( "ta gueule, log4j !" );
Vous utilisez quoi, et pourquoi ?
--
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes lescastcodeurs.
Pour envoyer un message à ce groupe, adressez un e-mail à lescast...@googlegroups.com.
Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse lescastcodeur...@googlegroups.com.
Pour plus d'options, consultez la page de ce groupe : http://groups.google.com/group/lescastcodeurs?hl=fr
Cela dit, un logger comme log4j dispose d'un mécanisme de rechargement
dynamique ( |configureAndWatch)|, configurable. Ok, c'est une solution
du pauvre, mais ça fonctionne...
[...]
Le 12/6/12 9:40 AM, Nicolas Labrot a écrit :
> 2012/12/6 Emmanuel Lécharny <elec...@gmail.com>Non, tu confonds. Si toutes les implémentations exposait un moyend e les
>
>> Le 12/6/12 8:36 AM, ehsavoie a écrit :
>>> D'ailleurs s'il y a des volontaires/contributeurs ...
>>> PS : comme indiqué slf4j c'est bien pour logger pas pour configurer à
>>> 'chaud' et ça c'est vraiment pénible.
>> Le problème, c'est qu'il s'agit d'une facade qui fonctionne avec tous
>> les loggers, en prenant en compte le plus petite dénominateur. La
>> configuration à chaud ne fait pas partie de l'API.
>>
>> Cela dit, un logger comme log4j dispose d'un mécanisme de rechargement
>> dynamique ( |configureAndWatch)|, configurable. Ok, c'est une solution
>> du pauvre, mais ça fonctionne...
>>
>
> Et elle n'a pas à faire partie de l'API. Slf4j créé une facade sur la
> partie logging, pas sur la configuration. Pour configurer c'est derrière la
> façade.
configurer, la facade offirait ce service. ce n'est pas le cas.
Le problème, c'est qu'on voudrait pouvoir configurer les logs sans
connaître l'implem, et que justement, ce n'est pas possible...
Sauf que changer les niveaux des logger au runtime c'est pas forcément stupide de pouvoir le faire ni en dehors de la façade.
En gros j'ai une façade pour tracer mais je fais des appels directs à mon implémentation pour configurer : bref slf4j perd de son intérêt car je me retrouve toujours avec une dépendance directe dans mon code sur l'implémentation.
Et je ne trouve pas ce usecase à la marge de l'utilisation d'un logger.
Moi ce qui me surprend c'est que tu ne trouves pas normal de pouvoir moduler le niveau de log à chaud.
Pour moi c'est un cas usuel et si je dois le fiare selon mon implementation alors qu'apporte SL4J vu que je depends de mon implementation dans le code pourquoi me coltiner une API supplémentaire ?
En embedded, je ne maîtrise pas forcément le ficher de conf. Et perso,
je veux stocker ma config autrement que dans un fichier de conf : je
fais comment alors ?