由于需要对tomcat的日志进行记录分析,百度搜索到了可以使用awstats这款软件,于是就捣鼓了两天,错误百出,记录步骤防止问题再次发生。
环境:server 2008 r2、项目已在tomcat8上正常运行、ActivePerl-5.24、awstats-7.7下载地址网上搜索一下吧
首先需要安装依赖文件ActivePerl,这个双击安装程序,一切默认安装即可,未遇到问题不做详细描述。
接下来就是进入安装正题了,将awstats-7.7下载包解压,在Tomcat8\webapps\目录下新建文件夹“awstats”用来存放需要搭建的awstats项目,将解压缩文件夹awstats7.7文件夹的docs、tools复制到Tomcat8\webapps\awstats目录下,将解压缩文件夹awstats-7.7\wwwroot下的classes、css、icon、js复制到Tomcat8\webapps\awstats,Tomcat8\webapps\awstats下新建文件夹WEB-INF、META-INF,将解压缩文件夹awstats-7.7\wwwroot下的cgi-bin复制到WEB-INF下,并在cgi-bin下新建data文件夹,WEB-INF下新建web.xml文件,META-INF下新建context.xml文件,文件夹内容如下图
WEB-INF下web.xml的代码如下:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
<servlet>
<servlet-name>cgi</servlet-name>
<servlet-class>org.apache.catalina.servlets.CGIServlet</servlet-class>
<init-param>
<param-name>clientInputTimeout</param-name>
<param-value>100</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>6</param-value>
</init-param>
<init-param>
<param-name>cgiPathPrefix</param-name>
<param-value>WEB-INF/cgi-bin</param-value>
</init-param>
<load-on-startup>5</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>cgi</servlet-name>
<url-pattern>/cgi-bin/*</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
<welcome-file-list>
<welcome-file>
index.jsp
</welcome-file>
<welcome-file>
index.html
</welcome-file>
<welcome-file>
index.htm
</welcome-file>
</welcome-file-list>
</web-app>
META-INF下context.xml代码如下,意思可以参考tomcat配置参数:
<Context reloadable="true" privileged="true">
</Context>
修改Tomcat8\conf下的配置文件server.xml如下
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".log"
pattern="combined" fileDateFormat="yyyy-MM-dd" resolveHosts="false"/>
在Tomcat8\conf下的配置文件tomcat-users.xml最后增加如下配置(设置访问用户名、密码):
<role rolename="manager-gui"/>
<user username="aw" password="123456" roles="manager-gui"/>
在Tomcat8\lib下复制servlet-cgi.jar为servlet-api.jar(不知道这个是否必须)
将 WEB-INF\cgi-bin目录下的awstats.model.conf文件改名为common.conf,新建文件awstats.localhost.conf,内容如下:
Include "common.conf"
LogFile="D:/Tomcat8/logs/localhost_access_log.%yyyy-%mm-%dd.log"
SiteDomain="localhost"
HostAliases="localhost 127.0.0.1"
DefaultFile="index.jsp"
DirData="data"
DirCgi="/cgi-bin"
DirIcons="/awstats/icon"
AllowToUpdateStatsFromBrowser=1
最后重启tomcat服务,使用浏览器访问http://localhost:port/awstats/cgi-bin/awstats.pl?config=localhost输入设置的用户名和密码,即可访问
-----------内容分割---------------
总结:安装这个踩的坑太多,百度搜索了N种方法,最后拼接而成,还有就是开始安装的TOMCAT8也不给力,重启总是出错,必须重启系统,又转头去解决tomcat的问题,结果发现先强制杀进程,再启动服务,这种方式有效;最后建议,如果不懂其中的一些意思,建议先按照步骤安装,成功后再去查看文件间的联系或去了解参数的意义,再做自定义修改
PS:代码内容有所借鉴