java - Jar file ran by cron doesn't write his own log -
i have simple java program (java version 1.7), email sender, , want log events during running. decided use org.apache.log4j.logger this. created log4j.properties file contains following:
log4j.rootlogger=info, file log4j.appender.file=org.apache.log4j.rollingfileappender log4j.appender.file.file=autoemail.log log4j.appender.file.maxfilesize=2mb log4j.appender.file.maxbackupindex=10 log4j.appender.file.layout=org.apache.log4j.patternlayout log4j.appender.file.layout.conversionpattern=%d{dd/mm/yyyy hh:mm:ss,sss} %5p %c{1}:%l - %m%n log4j.appender.file.encoding=utf-8 this how load configuration:
propertyconfigurator.configure(cl.getresource("resources/log4j.properties")); logger = logger.getlogger(""); logger.info("auto email sending started..."); where cl classloader. when run eclipse on localhost, works desired, log file has been created if didn't exist, , on next run appended.
then wanted run email sender program automatically every day @ 7 am. created scheduled cron job, executes following:
java -jar /var/projects/autoemail/autoemail.jar 2>> /var/projects/autoemail/autoemail.err on first run worked fine, log file had been created , info or error had been inserted, since program doesn't write event it. jar file runs, because can see sent emails. when started searching reason, , ran command, showed me permission denied error. checked rights of log file, , was: rw-rw-r--. modified, @ last rwxrwxrwx, still doesn't write log, , can't see error message in syslog file. owner doesn't need sudo right, think. btw server ubuntu 13/04.
does have idea of can wrong, still needed, or have do?
Comments
Post a Comment