[jboss-jira] [JBoss JIRA] (AS7-4444) Web deployment metrics missing

Brian Stansberry (JIRA) jira-events at lists.jboss.org
Mon Sep 17 16:38:35 EDT 2012


    [ https://issues.jboss.org/browse/AS7-4444?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12719265#comment-12719265 ] 

Brian Stansberry edited comment on AS7-4444 at 9/17/12 4:37 PM:
----------------------------------------------------------------

Actually, at some point prior to EAP 6.0.0 we removed the behavior whereby "recursive=true" would be ignored if "include-runtime=true". So, you can add recursive=true to the above operation and get statistics from any servlets that are part of the deployment.

{code}
[standalone at localhost:9999 /] /deployment=fibo.ear/subdeployment=fibo.war/subsystem=web:read-resource(include-runtime=true,recursive=true)
{
    "outcome" => "success",
    "result" => {
        "active-sessions" => 0,
        "context-root" => "/fibo",
        "duplicated-session-ids" => 0,
        "expired-sessions" => 0,
        "max-active-sessions" => 0,
        "rejected-sessions" => 0,
        "session-avg-alive-time" => 0,
        "session-max-alive-time" => 0,
        "sessions-created" => 0,
        "virtual-host" => "default-host",
        "servlet" => {"Fibo" => {
            "load-time" => 0L,
            "maxTime" => 9223372036854775807L,
            "min-time" => 0L,
            "processingTime" => 0L,
            "requestCount" => 0,
            "servlet-class" => "services.web.FiboServlet",
            "servlet-name" => "Fibo"
        }}
    }
}
{code}

Here's the description of the stuff that can be read via that command:

{code}
[standalone at localhost:9999 /] /deployment=helloworld.war/subsystem=web:read-resource-description(recursive=true)
{
    "outcome" => "success",
    "result" => {
        "description" => "Runtime resources exposed by web components in the deployment.",
        "attributes" => {
            "expired-sessions" => {
                "type" => INT,
                "description" => "Number of sessions that have expired",
                "expressions-allowed" => false,
                "nillable" => false,
                "access-type" => "metric",
                "storage" => "runtime"
            },
            "rejected-sessions" => {
                "type" => INT,
                "description" => "Number of rejected sessions",
                "expressions-allowed" => false,
                "nillable" => false,
                "access-type" => "metric",
                "storage" => "runtime"
            },
            "max-active-sessions" => {
                "type" => INT,
                "description" => "Max number of concurrent active sessions",
                "expressions-allowed" => false,
                "nillable" => false,
                "access-type" => "metric",
                "storage" => "runtime"
            },
            "session-max-alive-time" => {
                "type" => INT,
                "description" => "The longest time (in seconds) that an expired session had been alive",
                "expressions-allowed" => false,
                "nillable" => false,
                "access-type" => "metric",
                "storage" => "runtime"
            },
            "sessions-created" => {
                "type" => INT,
                "description" => "Total sessions created",
                "expressions-allowed" => false,
                "nillable" => false,
                "access-type" => "metric",
                "storage" => "runtime"
            },
            "session-avg-alive-time" => {
                "type" => INT,
                "description" => "Average time (in seconds) that expired sessions had been alive",
                "expressions-allowed" => false,
                "nillable" => false,
                "access-type" => "metric",
                "storage" => "runtime"
            },
            "context-root" => {
                "type" => STRING,
                "description" => "The context root of the web application",
                "expressions-allowed" => false,
                "nillable" => false,
                "min-length" => 1L,
                "max-length" => 2147483647L,
                "access-type" => "read-only",
                "storage" => "runtime"
            },
            "virtual-host" => {
                "type" => STRING,
                "description" => "The name of the virtual host on which the web application is served",
                "expressions-allowed" => false,
                "nillable" => false,
                "min-length" => 1L,
                "max-length" => 2147483647L,
                "access-type" => "read-only",
                "storage" => "runtime"
            },
            "active-sessions" => {
                "type" => INT,
                "description" => "Number of active sessions",
                "expressions-allowed" => false,
                "nillable" => false,
                "access-type" => "metric",
                "storage" => "runtime"
            },
            "duplicated-session-ids" => {
                "type" => INT,
                "description" => "Number of duplicated session IDs generated by the random source (anything bigger than 0 means problems)",
                "expressions-allowed" => false,
                "nillable" => false,
                "access-type" => "metric",
                "storage" => "runtime"
            }
        },
        "operations" => undefined,
        "children" => {"servlet" => {
            "description" => "Runtime information about the servlets in the deployment.",
            "model-description" => {"*" => {
                "description" => "Runtime information about the servlets in the deployment.",
                "attributes" => {
                    "min-time" => {
                        "type" => LONG,
                        "description" => "Minimum processing time of a request",
                        "expressions-allowed" => false,
                        "nillable" => true,
                        "access-type" => "metric",
                        "storage" => "runtime"
                    },
                    "load-time" => {
                        "type" => LONG,
                        "description" => "Load time",
                        "expressions-allowed" => false,
                        "nillable" => true,
                        "access-type" => "metric",
                        "storage" => "runtime"
                    },
                    "processingTime" => {
                        "type" => LONG,
                        "description" => "Total execution time of the servlet's service method",
                        "expressions-allowed" => false,
                        "nillable" => true,
                        "access-type" => "metric",
                        "storage" => "runtime"
                    },
                    "maxTime" => {
                        "type" => LONG,
                        "description" => "Maximum processing time of a request",
                        "expressions-allowed" => false,
                        "nillable" => true,
                        "access-type" => "metric",
                        "storage" => "runtime"
                    },
                    "requestCount" => {
                        "type" => INT,
                        "description" => "Number of requests processed by this servlet",
                        "expressions-allowed" => false,
                        "nillable" => true,
                        "access-type" => "metric",
                        "storage" => "runtime"
                    }
                },
                "operations" => undefined,
                "children" => {}
            }}
        }}
    }
}
{code}
                
      was (Author: brian.stansberry):
    Actually, at some point prior to EAP 6.0.0 we removed the behavior whereby "recursive=true" would be ignored if "include-runtime=true". So, you can add recursive=true to the above operation and get statistics from any servlets that are part of the deployment.

[standalone at localhost:9999 /] /deployment=fibo.ear/subdeployment=fibo.war/subsystem=web:read-resource(include-runtime=true,recursive=true)
{
    "outcome" => "success",
    "result" => {
        "active-sessions" => 0,
        "context-root" => "/fibo",
        "duplicated-session-ids" => 0,
        "expired-sessions" => 0,
        "max-active-sessions" => 0,
        "rejected-sessions" => 0,
        "session-avg-alive-time" => 0,
        "session-max-alive-time" => 0,
        "sessions-created" => 0,
        "virtual-host" => "default-host",
        "servlet" => {"Fibo" => {
            "load-time" => 0L,
            "maxTime" => 9223372036854775807L,
            "min-time" => 0L,
            "processingTime" => 0L,
            "requestCount" => 0,
            "servlet-class" => "services.web.FiboServlet",
            "servlet-name" => "Fibo"
        }}
    }
}

Here's the description of the stuff that can be read via that command:


[standalone at localhost:9999 /] /deployment=helloworld.war/subsystem=web:read-resource-description(recursive=true)
{
    "outcome" => "success",
    "result" => {
        "description" => "Runtime resources exposed by web components in the deployment.",
        "attributes" => {
            "expired-sessions" => {
                "type" => INT,
                "description" => "Number of sessions that have expired",
                "expressions-allowed" => false,
                "nillable" => false,
                "access-type" => "metric",
                "storage" => "runtime"
            },
            "rejected-sessions" => {
                "type" => INT,
                "description" => "Number of rejected sessions",
                "expressions-allowed" => false,
                "nillable" => false,
                "access-type" => "metric",
                "storage" => "runtime"
            },
            "max-active-sessions" => {
                "type" => INT,
                "description" => "Max number of concurrent active sessions",
                "expressions-allowed" => false,
                "nillable" => false,
                "access-type" => "metric",
                "storage" => "runtime"
            },
            "session-max-alive-time" => {
                "type" => INT,
                "description" => "The longest time (in seconds) that an expired session had been alive",
                "expressions-allowed" => false,
                "nillable" => false,
                "access-type" => "metric",
                "storage" => "runtime"
            },
            "sessions-created" => {
                "type" => INT,
                "description" => "Total sessions created",
                "expressions-allowed" => false,
                "nillable" => false,
                "access-type" => "metric",
                "storage" => "runtime"
            },
            "session-avg-alive-time" => {
                "type" => INT,
                "description" => "Average time (in seconds) that expired sessions had been alive",
                "expressions-allowed" => false,
                "nillable" => false,
                "access-type" => "metric",
                "storage" => "runtime"
            },
            "context-root" => {
                "type" => STRING,
                "description" => "The context root of the web application",
                "expressions-allowed" => false,
                "nillable" => false,
                "min-length" => 1L,
                "max-length" => 2147483647L,
                "access-type" => "read-only",
                "storage" => "runtime"
            },
            "virtual-host" => {
                "type" => STRING,
                "description" => "The name of the virtual host on which the web application is served",
                "expressions-allowed" => false,
                "nillable" => false,
                "min-length" => 1L,
                "max-length" => 2147483647L,
                "access-type" => "read-only",
                "storage" => "runtime"
            },
            "active-sessions" => {
                "type" => INT,
                "description" => "Number of active sessions",
                "expressions-allowed" => false,
                "nillable" => false,
                "access-type" => "metric",
                "storage" => "runtime"
            },
            "duplicated-session-ids" => {
                "type" => INT,
                "description" => "Number of duplicated session IDs generated by the random source (anything bigger than 0 means problems)",
                "expressions-allowed" => false,
                "nillable" => false,
                "access-type" => "metric",
                "storage" => "runtime"
            }
        },
        "operations" => undefined,
        "children" => {"servlet" => {
            "description" => "Runtime information about the servlets in the deployment.",
            "model-description" => {"*" => {
                "description" => "Runtime information about the servlets in the deployment.",
                "attributes" => {
                    "min-time" => {
                        "type" => LONG,
                        "description" => "Minimum processing time of a request",
                        "expressions-allowed" => false,
                        "nillable" => true,
                        "access-type" => "metric",
                        "storage" => "runtime"
                    },
                    "load-time" => {
                        "type" => LONG,
                        "description" => "Load time",
                        "expressions-allowed" => false,
                        "nillable" => true,
                        "access-type" => "metric",
                        "storage" => "runtime"
                    },
                    "processingTime" => {
                        "type" => LONG,
                        "description" => "Total execution time of the servlet's service method",
                        "expressions-allowed" => false,
                        "nillable" => true,
                        "access-type" => "metric",
                        "storage" => "runtime"
                    },
                    "maxTime" => {
                        "type" => LONG,
                        "description" => "Maximum processing time of a request",
                        "expressions-allowed" => false,
                        "nillable" => true,
                        "access-type" => "metric",
                        "storage" => "runtime"
                    },
                    "requestCount" => {
                        "type" => INT,
                        "description" => "Number of requests processed by this servlet",
                        "expressions-allowed" => false,
                        "nillable" => true,
                        "access-type" => "metric",
                        "storage" => "runtime"
                    }
                },
                "operations" => undefined,
                "children" => {}
            }}
        }}
    }
}

                  
> Web deployment metrics missing
> ------------------------------
>
>                 Key: AS7-4444
>                 URL: https://issues.jboss.org/browse/AS7-4444
>             Project: Application Server 7
>          Issue Type: Bug
>          Components: Web
>    Affects Versions: 7.1.1.Final
>            Reporter: Stefan Negrea
>            Assignee: Remy Maucherat
>              Labels: rhq
>
> The following web deployment metrics are missing from AS7 when compared to AS5 exposed metrics:
> Clustered - True if this web application context is clustered
> Virtual Host - the virtual host with which this context is associated
> Response Time - the minimum, maximum, and average response times for requests serviced by this webapp
> Currently Active Sessions - the number of sessions that are currently active for this WAR
> Maximum Active Sessions	- the maximum number of sessions that have been active for this WAR
> Created Sessions - the number of sessions created for this WAR
> Created Sessions per Minute - the number of sessions created for this WAR
> Expired Sessions - the number of expired sessions for this WAR
> Expired Sessions per Minute - the number of expired sessions for this WAR
> Rejected Sessions - the number of sessions rejected for this WAR
> Rejected Sessions per Minute - the number of sessions rejected for this WAR
> Average Session Alive Time - the average alive time of sessions for this WAR
> Max Session Alive Time - the maximum alive time of sessions for this WAR

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


More information about the jboss-jira mailing list