I would like to understand how I can see my application logs using log4j in Apache Apex when using the official RTS Test Sandbox in docker
.
To be more specific, I would like to know where Apex stores application-specific log files inside of the container.
I am running the latest official docker image as described here: https://hub.docker.com/r/datatorrent/rts/
Using dtManage
running on http://localhost:9090/, I successfully uploaded my application and launched it.
In the Monitor
tab i can see that my operators are receiving and emitting tuples.
When I click on the blue button called AM logs
it shows a dropdown of 3 log-files namely:
- AppMaster.sdterr
- AppMaster.stdout
- apex.log
When I open and search the logs of all the 3 files, I can see lots of logs from apex, but none of my custom application logs are printed. My logging code looks like this:
private static final Logger LOG = LoggerFactory.getLogger(Application.class);
LOG.info("helloworld");
While running the application in Local Mode, all my logs were visible inside the console though.
In the properties.xml I also enabled full debugging:
<property>
<name>dt.attr.DEBUG</name>
<value>true</value>
</property>
Can someone help me out here?