天天看点

【运维-tomcat监控】

背景

Tomcat作为常用的web容器,经常需要对tomcat 的状态进行监控,为了安全起见,自带的管理页面通常在生成环境里是要被删除掉的,于是用脚本方式定时获取Tomcat的状态信息。

状态信息包括:进程号、版本、应用数,日志大小、JVM等信息。

以下是Tomcat的监控配置步骤

1. Tomcat8配置tomcat-users.xml配置

<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<user username="admin" password="admin" roles="manager-script,manager-jmx,manager-status"/>
           
【运维-tomcat监控】

但是tomcat8.5 更改之后,仍然访问拒绝。

还需步骤如下:

vi /usr/local/tomcat/apache-tomcat/webapps/manager/META-INF/context.xml

【运维-tomcat监控】

2. Tomcat7配置管理

【运维-tomcat监控】
<user username="admin" password="1234" roles="admin,manager,manager-gui,manager-script,manager-jmx"/>

           

3. 脚本

tomcat_monitor

脚本调用方式:

./tomcat_monitor -u admin -p admin -h 127.0.0.1 -P 8080

脚本返回数据:

{
    "static_tomcat_version":8,
    "tomcat_server_status":1,
    "application0":{
        "status":"running",
        "path":"/app1",
        "active_sessions":0,
        "name":"app1"
    },
    "application1":{
        "status":"running",
        "path":"/app2",
        "active_sessions":0,
        "name":"app2"
    },
    "application2":{
        "status":"running",
        "path":"/app3",
        "active_sessions":0,
        "name":"app3"
    },
    "application3":{
        "status":"running",
        "path":"/app4",
        "active_sessions":0,
        "name":"app4"
    },
    "application4":{
        "status":"running",
        "path":"/app5",
        "active_sessions":0,
        "name":"app5"
    },
    "application5":{
        "status":"running",
        "path":"/app6",
        "active_sessions":0,
        "name":"app6"
    },
    "tomcat_application_count":6,
    "free_memory":2474.21,
    "total_memory":5939.25,
    "max_memory":5939.25,
    "available_memory":2474.21,
    "used_memory":3465.04,
    "percent_used_memory":58.3413337765,
    "usage_CMS_Old_Gen":1906743848,
    "usage_Par_Eden_Space":1549483576,
    "usage_Par_Survivor_Space":177130064,
    "usage_Code_Cache":95788544,
    "usage_Compressed_Class_Space":19645032,
    "usage_Metaspace":165271168,
    "host":"127.0.0.1",
    "port":8080,
    "pid":65678,
    "baseDir":"/usr/local/tomcat",
    "logFileNum":331,
    "logDirSize":594768,
    "logFilesystemTotal":868580864,
    "logFilesystemAvail":793805384,
    "logFilesystemUsed":74775480,
    "logFilesystemUse":9
}

           

4. 监控页面

【运维-tomcat监控】

继续阅读