Ho un po 'di problemi nel loggare su un file usando log4j in tempesta.Come scrivere registri su un file usando Log4j e Storm Framework?
Prima di presentare la mia topologia, vale a dire nel mio metodo principale per cui ho scritto alcune dichiarazioni di registro e configurato il logger tramite:
PropertyConfigurator.configure(myLog4jProperties)
Ora, quando eseguo il mio topologia usando il mio eseguibile jar in Eclipse - i suoi file funzionanti e di registro vengono creati come supposto.
O
Quando eseguo il mio jar eseguibile con "java-jar MyJarFile someOtherOptions", posso vedere log4j in fase di configurazione ei file vengono formato correttamente e la registrazione viene effettuata su entrambi i file e le console (come definito nel mio log4j .properties)mA quando ho eseguito lo stesso vaso utilizzando "jar tempesta MyJarFile MyMainClass someOtherOptions" non è in grado di creare e accedere in una delle file, tranne su console.
sto parlando i log che sto Printing PRIMA presentazione mia topologia.
Esiste un modo per registrare le mie istruzioni in un file durante l'utilizzo di tempesta? Sono non associato a org.apache.log4j.
Si sta utilizzando un cluster locale come exec jar? Quando usi "storm jar ..." stai usando la modalità cluster. Quindi hai controllato il file storm.log.properties sul tuo storm install/log4j nel tuo server? Quando si invia una topologia in modalità cluster, storm è già in esecuzione e si scrivono i registri, forse non è possibile sovrascrivere log4j in fase di runtime, pertanto la modifica del file log4j storm prima dovrebbe funzionare in tutti i casi. – zenbeni
@zenbeni In realtà sto girando in local_mode. Non riesco a trovare alcuna proprietà relativa a log4j nella directory di installazione di tempesta. Sto usando l'incubazione di apache-storm-0.9.2. – holmes840