【tomcat】日志、连接限制、Tomcat Users
来源:互联网 发布:软件数据与金蝶对接 编辑:程序博客网 时间:2024/06/05 18:46
双休,周五,一觉醒来不知道应该做点什么,干脆整理下文档吧。
在${catalina.base}目录中有个conf文件夹,这里面包含了tomcat的配置文件,大致分析下tomcat的配置
本文大致谈论下日志、版本信息、连接限制、用户的配置
使用的tomcat版本为7.0.63
日志
Tomcat日志分为两种:运行日志和访问日志。
运行日志主要记录项目运行中的各种信息,尤其是一些错误信息。
访问日志是记录来访者的信息,包括来访者的IP、时间、访问的资料等相关信息。
运行日志
运行日志和访问日志。运行日志主要记录项目运行中的各种信息,尤其是一些错误信息。
类型
catalina、manager、localhost、host-manger
四个权限类型,分为对应不同的tomcat用户。tomcat用户会在后面简述。
级别
SEVERE (highest value) > WARNING > INFO > CONFIG > FINE > FINER > FINEST (lowest value)
一般都是配置为FINE
配置
在文件${catalina.base}/config/loggin.properties中修改配置。
日志属性配置:
##日志等级分为FINE、OFF、ALL2localhost.org.apache.juli.FileHandler.level = FINE##日志的目录2localhost.org.apache.juli.FileHandler.directory = ${catalina.base}/logs##日志输出前缀,后面跟日期信息(yyyy-MM-dd)##tomcat_6.0.29输出4种不同的日志2localhost.org.apache.juli.FileHandler.prefix = localhost.
配置level时,除了上面的七个级别外,OFF代表禁用日志,ALL表示所有等级。
日志文件的输出级别和处理类:
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = INFOorg.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers= 2localhost.org.apache.juli.FileHandler
控制台日志输出:
#控制台日志输出级别java.util.logging.ConsoleHandler.level = FINE #控制台日志输出格式化类,Formatter 为格式化 LogRecords 提供支持。java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
输出样式修改
使用log4j和common-logging搭配输出更详细的日志。详情点击这里 –> 参考文章
小结:
- 运行日志对应不同的用户权限,平时我们在eclipse中默认使用的是localhost用户。
- 通过tomcat的manager页面登录不同权限用户后,会形成不同的操作日志(需要预先为用户配置权限,本文中会提及)。
- 运行日志可以存放在配置的本地文件夹中,也可以在控制台打印输出显示
访问日志
记录来访者的信息,包括来访者的IP、时间、访问的资料等相关信息。
配置
在文件${catalina.base}/config/server.xml中修改配置,在中添加如下代码:
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log." suffix=".txt" pattern="%h %l %u %t "%r" %s %b" />
参数解释:
- Directory:日志存放目录
- Prefix:日志名称的前缀
- Suffix:存储格式
- Pattern:日志内容格式,分为common和combined,以及自定义设置。
Patten值的详细解释:
%a – 远程主机的IP (Remote IP address) %A – 本机IP (Local IP address) %b – 发送字节数,不包含HTTP头,0字节则显示 ‘-’ (Bytes sent, excluding HTTP headers, or ‘-’ if no bytes were sent) %B – 发送字节数,不包含HTTP头 (Bytes sent, excluding HTTP headers) %h – 远程主机名 (Remote host name) %H – 请求的具体协议,HTTP/1.0 或 HTTP/1.1 (Request protocol) %l – 远程用户名,始终为 ‘-’ (Remote logical username from identd (always returns ‘-’)) %m – 请求方式,GET, POST, PUT (Request method) %p – 本机端口 (Local port) %q – 查询串 (Query string (prepended with a ‘?’ if it exists, otherwise an empty string) %r – HTTP请求中的第一行 (First line of the request) %s – HTTP状态码 (HTTP status code of the response) %S – 用户会话ID (User session ID) %t – 访问日期和时间 (Date and time, in Common Log Format format) %u – 已经验证的远程用户 (Remote user that was authenticated %U – 请求的URL路径 (Requested URL path) %v – 本地服务器名 (Local server name) %D – 处理请求所耗费的毫秒数 (Time taken to process the request, in millis) %T – 处理请求所耗费的秒数 (Time taken to process the request, in seconds)
版本信息
- 通过catalina version命令打印tomcat信息,包含版本信息。或者进入${catalina_base}/bin执行version.bar打印信息。
- 在${catalina_base}/RELEASE-NOTES中查找版本信息。
- 有时在下载的tomcat源文件上,在其文件名上会有标识版本信息
连接限制
线程池和连接器在tomcat启动被加载。
线程池
在${catalina_base}/conf/server.xml中可以对线程池进行设置,一般在优化并发时可以使用线程池。
一个tomcat实例可以创建多个线程池,一个线程池可以被多个连接器共享使用。
配置:
<Executor name="tomcatThreadPool" namePrefix="catalina-exec-" maxThreads="150" minSpareThreads="5"/>
常用参数说明:
- 注意:查看详细属性说明,可以在${catalina_base}/webapps /docs/config/executor.html查看。
连接器
在${catalina_base}/conf/server.xml中可以对连接器进行设置,一个tomcat实例可以有多个连接器。
连接器常见配置:
<!-- 不使用线程池 --><Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /><!-- 使用线程池 --><Connector executor="tomcatThreadPool" port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
连接器常用属性:
注意:查看详细属性说明,可以在${catalina_base}/webapps /docs/config/http.html查看。
用户
在${catalina_base}/conf/tomcat-users.xml中配置用户权限
简单配置:
<tomcat-users> <role rolename="tomcat"/> <role rolename="role1"/> <role rolename="manager-gui"/> <role rolename="admin-gui"/> <user username="xxl" password="123456" roles="tomcat,role1,manager-gui,admin-gui"/></tomcat-users>
用户权限有多种,用户可以根据自己的需求进行设置
user,admin,analyst,developer,manager,manager-gui和rest-all
在${catalina_base}/docs/manager-howto.html中可以找到具体manager权限
注意:其它的几种权限没有找到具体解释,若有知道者,望告知。
- 【tomcat】日志、连接限制、Tomcat Users
- tomcat-users
- tomcat-users.xml
- tomcat-users.xml
- tomcat-users配置文件
- tomcat-users.xml
- tomcat-users.xml 配置
- tomcat-users.xml
- tomcat-users.xml
- tomcat-users.xml配制
- 配置tomcat-users.xml
- tomcat 访问日志及ip限制
- ubuntu&tomcat最大连接数限制
- Tomcat tomcat-users.xml 配置用户
- Tomcat里的tomcat-users.xml配置
- tomcat conf 目录下tomcat-users.xml
- tomcat-users.xml(tomcat 7)配置
- Tomcat 配置2 tomcat-users.xml
- 作业:say hello!
- android底部导航切换实现(md)
- 蒙特卡洛方法的应用——解决“彩色砖块”问题
- HTML5 标题h 段落p 下划线hr 轻松搞定这种页面
- python遍历指定类型文件
- 【tomcat】日志、连接限制、Tomcat Users
- 回顾IT职业历程
- 【LeetCode】Search Insert Position搜索插入位置[数组、二分法]
- HDU-1874-畅通工程续【SPFA】
- 职称论文发表流程
- Android 端基于 OpenCV 的边框识别功能
- STL-adjacent_find算法
- java实现url编码与中文的互相转换
- NOIP2017金秋冲刺训练营杯联赛模拟大奖赛第二轮Day1