JSP and Logs
From Lunarpages Web Hosting Wiki
Do you provide us with standard output and standard error logs for our servlets?
Unfortunately, due to the nature of a shared environments, we cannot provide our users with the standard error and standard output error logs. We recommend using a logging library to do the logging for you. Examples of such libraries are log4j and JavaLog.
Can we simply redirect the standard error logs to a file on our home directory?
No, we do not allow redirecting main logs to a log file in a user's home directory. This is because we use the logs to monitor if a user is using excessive processes.
How do I enable log4j in my web application?
To enable log4j logging to a file on lunar pages do the following:
1. Create a servlet class that will initialize log4j. Here is the code:
package logging;
import org.apache.log4j.PropertyConfigurator;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class Log4jInit extends HttpServlet {
public
void init() {
String prefix = getServletContext().getRealPath("/");
String file = getInitParameter("log4j-init-file");
// if the log4j-init-file is not set, then no point in trying
if(file != null) {
PropertyConfigurator.configure(prefix+file);
}
}
public
void doGet(HttpServletRequest req, HttpServletResponse res) {
}
}
2. In your web.xml file add the following entry:
<servlet> <servlet-name>log4j-init</servlet-name> <servlet-class>logging.Log4jInit</servlet-class> <init-param> <param-name>log4j-init-file</param-name> <param-value>WEB-INF/classes/log4j.lcf</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet>
3. Create a log4j.lcf file located in your WEB-INF/classes directory as with the following entries:
log4j.rootLogger=debug, R # yourdirectory below is where your site lives. log4j.appender.R=org.apache.log4j.RollingFileAppender log4j.appender.R.File=/home/yourdirectory/public_html/logs/out.log log4j.appender.R.MaxFileSize=500KB # Keep one backup file log4j.appender.R.MaxBackupIndex=1 log4j.appender.R.layout=org.apache.log4j.PatternLayout log4j.appender.R.layout.ConversionPattern=%d %-5p [%c] %m%n
4. Add logging to your class. Here is an example:
import org.apache.log4j.Logger;
public class Example {
static Logger logger = Logger.getLogger(Example.class);
public void doSomething() {
logger.debug("testing logging");
}
}
5. make sure you have the log4j-1.2.8.jar file located in your WEB-INF/lib directory.
Want to read this in another language? | Web Hosting Support Categories: Beginner | Billing & Sales | Web Design | LPCP | cPanel | Plesk | Quicksite | PageMason | E-mail | Databases | Domain Names | Reseller | Dedicated | VPS | ASP | JSP | PHP | Third Party Scripts | Affiliates | Misc |
Lunarpages Deal: Save $72 on your next Business web hosting plan! Starting at $18.95 per month, this an offer you can't miss. Perfect for business and e-commerce hosting sites, comes with free e-commerce tools and a TremenDesk Help Desk. Limited time offer!
