| AccessLogValve |  | 0% |  | 0% | 142 | 142 | 293 | 293 | 54 | 54 | 1 | 1 |
| ExtendedAccessLogValve |  | 0% |  | 0% | 79 | 79 | 191 | 191 | 12 | 12 | 1 | 1 |
| JDBCAccessLogValve |  | 0% |  | 0% | 52 | 52 | 179 | 179 | 31 | 31 | 1 | 1 |
| RemoteIpValve |  | 0% |  | 0% | 63 | 63 | 147 | 147 | 29 | 29 | 1 | 1 |
| ErrorReportValve |  | 0% |  | 0% | 42 | 42 | 141 | 141 | 9 | 9 | 1 | 1 |
| StuckThreadDetectionValve |  | 0% |  | 0% | 35 | 35 | 77 | 77 | 16 | 16 | 1 | 1 |
| AccessLogValve.DateFormatCache.Cache |  | 0% |  | 0% | 21 | 21 | 70 | 70 | 4 | 4 | 1 | 1 |
| CometConnectionManagerValve |  | 0% |  | 0% | 34 | 34 | 96 | 96 | 9 | 9 | 1 | 1 |
| AccessLogValve.DateAndTimeElement |  | 0% |  | 0% | 29 | 29 | 76 | 76 | 4 | 4 | 1 | 1 |
| CrawlerSessionManagerValve |  | 0% |  | 0% | 30 | 30 | 65 | 65 | 11 | 11 | 1 | 1 |
| PersistentValve |  | 0% |  | 0% | 29 | 29 | 63 | 63 | 4 | 4 | 1 | 1 |
| ExtendedAccessLogValve.PatternTokenizer |  | 0% |  | 0% | 23 | 23 | 68 | 68 | 8 | 8 | 1 | 1 |
| RequestFilterValve |  | 0% |  | 0% | 36 | 36 | 72 | 72 | 17 | 17 | 1 | 1 |
| ValveBase |  | 0% |  | 0% | 26 | 26 | 60 | 60 | 18 | 18 | 1 | 1 |
| StuckThreadDetectionValve.MonitoredThread |  | 0% |  | 0% | 18 | 18 | 35 | 35 | 10 | 10 | 1 | 1 |
| SSLValve |  | 0% |  | 0% | 12 | 12 | 43 | 43 | 4 | 4 | 1 | 1 |
| SemaphoreValve |  | 0% |  | 0% | 20 | 20 | 43 | 43 | 15 | 15 | 1 | 1 |
| AccessLogValve.DateFormatCache |  | 0% |  | 0% | 8 | 8 | 27 | 27 | 4 | 4 | 1 | 1 |
| ExtendedAccessLogValve.ResponseAllHeaderElement |  | 0% |  | 0% | 6 | 6 | 17 | 17 | 2 | 2 | 1 | 1 |
| AccessLogValve.RequestElement |  | 0% |  | 0% | 5 | 5 | 16 | 16 | 2 | 2 | 1 | 1 |
| ExtendedAccessLogValve.DateElement |  | 0% |  | 0% | 5 | 5 | 9 | 9 | 3 | 3 | 1 | 1 |
| AccessLogValve.FormatType |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 | 1 | 1 |
| ExtendedAccessLogValve.TimeElement |  | 0% |  | 0% | 5 | 5 | 9 | 9 | 3 | 3 | 1 | 1 |
| AccessLogValve.ByteSentElement |  | 0% |  | 0% | 7 | 7 | 14 | 14 | 2 | 2 | 1 | 1 |
| AccessLogValve.ElapsedTimeElement |  | 0% |  | 0% | 3 | 3 | 13 | 13 | 2 | 2 | 1 | 1 |
| AccessLogValve.SessionAttributeElement |  | 0% |  | 0% | 6 | 6 | 16 | 16 | 2 | 2 | 1 | 1 |
| RemoteAddrValve |  | 0% |  | 0% | 6 | 6 | 11 | 11 | 5 | 5 | 1 | 1 |
| RemoteHostValve |  | 0% |  | 0% | 6 | 6 | 11 | 11 | 5 | 5 | 1 | 1 |
| AccessLogValve.ResponseHeaderElement |  | 0% |  | 0% | 5 | 5 | 12 | 12 | 2 | 2 | 1 | 1 |
| AccessLogValve.HostElement |  | 0% |  | 0% | 8 | 8 | 12 | 12 | 2 | 2 | 1 | 1 |
| AccessLogValve.RequestAttributeElement |  | 0% |  | 0% | 5 | 5 | 13 | 13 | 2 | 2 | 1 | 1 |
| AccessLogValve.CookieElement |  | 0% |  | 0% | 5 | 5 | 12 | 12 | 2 | 2 | 1 | 1 |
| ExtendedAccessLogValve.CookieElement |  | 0% |  | 0% | 5 | 5 | 8 | 8 | 2 | 2 | 1 | 1 |
| AccessLogValve.HeaderElement |  | 0% |  | 0% | 4 | 4 | 11 | 11 | 2 | 2 | 1 | 1 |
| ExtendedAccessLogValve.RequestParameterElement |  | 0% |  | 0% | 5 | 5 | 10 | 10 | 3 | 3 | 1 | 1 |
| StuckThreadDetectionValve.MonitoredThreadState |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 | 1 | 1 |
| AccessLogValve.RemoteAddrElement |  | 0% |  | 0% | 4 | 4 | 9 | 9 | 2 | 2 | 1 | 1 |
| AccessLogValve.ProtocolElement |  | 0% |  | 0% | 4 | 4 | 9 | 9 | 2 | 2 | 1 | 1 |
| AccessLogValve.LocalPortElement |  | 0% |  | 0% | 4 | 4 | 9 | 9 | 2 | 2 | 1 | 1 |
| ExtendedAccessLogValve.new AccessLogValve.AccessLogElement() {...} |  | 0% |  | 0% | 3 | 3 | 8 | 8 | 2 | 2 | 1 | 1 |
| ExtendedAccessLogValve.SessionAttributeElement |  | 0% |  | 0% | 4 | 4 | 9 | 9 | 2 | 2 | 1 | 1 |
| AccessLogValve.FirstByteTimeElement |  | 0% |  | 0% | 3 | 3 | 7 | 7 | 2 | 2 | 1 | 1 |
| AccessLogValve.SessionIdElement |  | 0% |  | 0% | 4 | 4 | 8 | 8 | 2 | 2 | 1 | 1 |
| AccessLogValve.UserElement |  | 0% |  | 0% | 4 | 4 | 9 | 9 | 2 | 2 | 1 | 1 |
| StuckThreadDetectionValve.CompletedStuckThread |  | 0% | | n/a | 4 | 4 | 8 | 8 | 4 | 4 | 1 | 1 |
| AccessLogValve.QueryElement |  | 0% |  | 0% | 4 | 4 | 8 | 8 | 2 | 2 | 1 | 1 |
| ExtendedAccessLogValve.ElementTimestampStruct |  | 0% | | n/a | 1 | 1 | 5 | 5 | 1 | 1 | 1 | 1 |
| ExtendedAccessLogValve.new AccessLogValve.AccessLogElement() {...} |  | 0% |  | 0% | 3 | 3 | 6 | 6 | 2 | 2 | 1 | 1 |
| AccessLogValve.ThreadNameElement |  | 0% |  | 0% | 3 | 3 | 6 | 6 | 2 | 2 | 1 | 1 |
| ExtendedAccessLogValve.new AccessLogValve.AccessLogElement() {...} |  | 0% | | n/a | 2 | 2 | 3 | 3 | 2 | 2 | 1 | 1 |
| ExtendedAccessLogValve.ServletContextElement |  | 0% | | n/a | 2 | 2 | 5 | 5 | 2 | 2 | 1 | 1 |
| ExtendedAccessLogValve.new AccessLogValve.AccessLogElement() {...} |  | 0% | | n/a | 2 | 2 | 3 | 3 | 2 | 2 | 1 | 1 |
| ExtendedAccessLogValve.new AccessLogValve.AccessLogElement() {...} |  | 0% | | n/a | 2 | 2 | 3 | 3 | 2 | 2 | 1 | 1 |
| ExtendedAccessLogValve.new AccessLogValve.AccessLogElement() {...} |  | 0% | | n/a | 2 | 2 | 3 | 3 | 2 | 2 | 1 | 1 |
| ExtendedAccessLogValve.new AccessLogValve.AccessLogElement() {...} |  | 0% | | n/a | 2 | 2 | 8 | 8 | 2 | 2 | 1 | 1 |
| AccessLogValve.LocalAddrElement |  | 0% | | n/a | 3 | 3 | 10 | 10 | 3 | 3 | 1 | 1 |
| ExtendedAccessLogValve.ResponseHeaderElement |  | 0% | | n/a | 2 | 2 | 5 | 5 | 2 | 2 | 1 | 1 |
| ExtendedAccessLogValve.RequestHeaderElement |  | 0% | | n/a | 2 | 2 | 5 | 5 | 2 | 2 | 1 | 1 |
| ExtendedAccessLogValve.RequestAttributeElement |  | 0% | | n/a | 2 | 2 | 5 | 5 | 2 | 2 | 1 | 1 |
| AccessLogValve.RequestURIElement |  | 0% |  | 0% | 3 | 3 | 5 | 5 | 2 | 2 | 1 | 1 |
| AccessLogValve.HttpStatusCodeElement |  | 0% |  | 0% | 3 | 3 | 5 | 5 | 2 | 2 | 1 | 1 |
| ExtendedAccessLogValve.new AccessLogValve.AccessLogElement() {...} |  | 0% | | n/a | 2 | 2 | 3 | 3 | 2 | 2 | 1 | 1 |
| ExtendedAccessLogValve.new AccessLogValve.AccessLogElement() {...} |  | 0% | | n/a | 2 | 2 | 3 | 3 | 2 | 2 | 1 | 1 |
| ExtendedAccessLogValve.new AccessLogValve.AccessLogElement() {...} |  | 0% | | n/a | 2 | 2 | 3 | 3 | 2 | 2 | 1 | 1 |
| ExtendedAccessLogValve.new AccessLogValve.AccessLogElement() {...} |  | 0% | | n/a | 2 | 2 | 3 | 3 | 2 | 2 | 1 | 1 |
| ExtendedAccessLogValve.new AccessLogValve.AccessLogElement() {...} |  | 0% | | n/a | 2 | 2 | 3 | 3 | 2 | 2 | 1 | 1 |
| ExtendedAccessLogValve.new AccessLogValve.AccessLogElement() {...} |  | 0% | | n/a | 2 | 2 | 3 | 3 | 2 | 2 | 1 | 1 |
| ExtendedAccessLogValve.new AccessLogValve.AccessLogElement() {...} |  | 0% | | n/a | 2 | 2 | 3 | 3 | 2 | 2 | 1 | 1 |
| AccessLogValve.StringElement |  | 0% | | n/a | 2 | 2 | 5 | 5 | 2 | 2 | 1 | 1 |
| AccessLogValve.MethodElement |  | 0% |  | 0% | 3 | 3 | 4 | 4 | 2 | 2 | 1 | 1 |
| AccessLogValve.new ThreadLocal() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| AccessLogValve.LocalServerNameElement | | 0% | | n/a | 2 | 2 | 3 | 3 | 2 | 2 | 1 | 1 |
| ExtendedAccessLogValve.DateElement.new ThreadLocal() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| ExtendedAccessLogValve.TimeElement.new ThreadLocal() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| AccessLogValve.LogicalUserNameElement | | 0% | | n/a | 2 | 2 | 3 | 3 | 2 | 2 | 1 | 1 |
| AccessLogValve.new ThreadLocal() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| Constants.AccessLog | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
| Constants | | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 | 1 | 1 |