QueueMetrics > Improving QueueMetrics

Queue direction and session reset

(1/1)

silmaril:

Few things i would like to see fixed/enhanced in queuemetrics as of now:

1/ Queue Direction
In our setup we have two queues, one 'real' (at least for asterisk) with inbound calls, one 'fake' for outbond calls.
In QM setup we can specify the 'queue direction' for each individual queue, but not when 'grouping' queues
and the call direction in the reports gave 'undefined' for everything.
Quite useless, either we review individual queue reports, for which we already knew the direction,
or we try the grouped reports but then we loss the direction, just where it was needed

2/ Session reset || tomcat restart
When restarting the servlet handler, if you reconnect an previously (to the reset) connected user, you get a message like that (which not very clear, and quite frightening for normal people):

--- Quote ---"Errore tecnico nella classe 'it.loway.app.queuemetrics.autenticazione.testNLicMod'. -- Inner Exception -- - Exception: it.loway.tpf.common.exceptions.TechException - Stack trace: - -- Inner Exception -- - Exception: it.loway.tpf.common.exceptions.LicenceException - Stack trace: - -- Inner Exception -- - Exception: java.lang.NoSuchMethodError - Error: - it.loway.tpf.U.hexToBytes(Ljava/lang/String;)[BStack trace: - java.lang.NoSuchMethodError: it.loway.tpf.U.hexToBytes(Ljava/lang/String;)[B - at it.loway.tpf.transaction.cs.CryLicMan.validate(Unknown Source) - at it.loway.tpf.transaction.cs.CryFeatIniter.verify(Unknown Source) - at it.loway.app.queuemetrics.autenticazione.testNLicMod.doRun(Unknown Source) - at it.loway.tpf.transaction.servlets.LowayTransactionController.serveRequest(Unknown Source) - at it.loway.tpf.transaction.servlets.LowayTransactionController.serveRequestWrapper(Unknown Source) - at it.loway.tpf.transaction.servlets.LowayTransactionController.doPost(Unknown Source) - at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) - at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) - at sun.reflect.GeneratedMethodAccessor32.invoke(Unknown Source) - at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) - at java.lang.reflect.Method.invoke(Method.java:585) - at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:243) - at java.security.AccessController.doPrivileged(Native Method) - at javax.security.auth.Subject.doAsPrivileged(Subject.java:517) - at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:275) - at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:161) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:245) - at org.apache.catalina.core.ApplicationFilterChain.access$0(ApplicationFilterChain.java:177) - at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:156) - at java.security.AccessController.doPrivileged(Native Method) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:152) - at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) - at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) - at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) - at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) - at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) - at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) - at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:199) - at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:282) - at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:767) - at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:697) - at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:889) - at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) - at java.lang.Thread.run(Thread.java:595) - -- End Inner Exception -- - - Service Type: TrustManagerFactory - SunX509 - X509 - PKIX - X.509 - SunPKIX - Service Type: CertPathValidator - PKIX - Service Type: SSLContext - TLS - SSL - TLSv1 - SSLv3 - Service Type: CertStore - com.sun.security.IndexedCollection - Collection - LDAP - Service Type: AlgorithmParameterGenerator - DSA - DiffieHellman - OID.1.2.840.113549.1.3.1 - DH - 1.2.840.113549.1.3.1 - Service Type: KeyGenerator - ARCFOUR - Rijndael - Blowfish - HmacSHA256 - RC4 - TripleDES - HmacSHA512 - DESede - HmacSHA384 - AES - HmacMD5 - HmacSHA1 - DES - RC2 - Service Type: Mac - HmacSHA512 - HmacSHA256 - HmacSHA384 - HmacMD5 - HmacSHA1 - HmacPBESHA1 - Service Type: Cipher - ARCFOUR - PBEWithMD5AndDES - Rijndael - OID.1.2.840.113549.1.12.1.6 - Blowfish - PBEWithSHA1AndDESede - PBEWithMD5AndTripleDES - AESWrap - RC4 - PBEWithSHA1AndRC2_40 - RSA - TripleDES - OID.1.2.840.113549.1.5.3 - 1.2.840.113549.1.12.1.3 - DESede - OID.1.2.840.113549.1.12.1.3 - AES - 1.2.840.113549.1.12.1.6 - DESedeWrap - 1.2.840.113549.1.5.3 - DES - RC2 - Service Type: Signature - OID.1.2.840.10040.4.3 - OID.1.2.840.113549.1.1.4 - 1.3.14.3.2.29 - SHA384withRSA - SHA/DSA - OID.1.2.840.113549.1.1.5 - SHA512withRSA - DSS - MD5withRSA - OID.1.2.840.113549.1.1.11 - SHA1withRSA - NONEwithDSA - 1.2.840.113549.1.1.4 - MD5andSHA1withRSA - 1.2.840.113549.1.1.11 - OID.1.2.840.113549.1.1.13 - 1.3.14.3.2.27 - 1.2.840.10040.4.3 - SHA256withRSA - 1.2.840.113549.1.1.2 - 1.2.840.113549.1.1.12 - RawDSA - SHA1withDSA - SHA1/DSA - 1.3.14.3.2.13 - MD2withRSA - SHAwithDSA - DSAWithSHA1 - 1.2.840.113549.1.1.13 - OID.1.3.14.3.2.29 - DSA - 1.2.840.113549.1.1.5 - SHA-1/DSA - OID.1.2.840.113549.1.1.12 - OID.1.2.840.113549.1.1.2 - Service Type: MessageDigest - SHA-512 - SHA1 - MD2 - SHA - SHA-256 - SHA-1 - MD5 - SHA-384 - Service Type: KeyStore - PKCS12 - CaseExactJKS - JKS - JCEKS - Service Type: SecureRandom - NativePRNG - SHA1PRNG - Service Type: KeyPairGenerator - RSA - DSA - 1.2.840.113549.1.1 - 1.2.840.10040.4.1 - OID.1.2.840.113549.1.1 - OID.1.2.840.113549.1.3.1 - DiffieHellman - DH - 1.2.840.113549.1.3.1 - 1.3.14.3.2.12 - OID.1.2.840.10040.4.1 - Service Type: CertificateFactory - X509 - X.509 - Service Type: Provider - id - Service Type: SaslClientFactory - PLAIN - EXTERNAL - CRAM-MD5 - DIGEST-MD5 - GSSAPI - Service Type: KeyManagerFactory - SunX509 - NewSunX509 - Service Type: AlgorithmParameters - PBEWithMD5AndDES - Blowfish - PBEWithSHA1AndDESede - PBE - PBEWithSHA1AndRC2_40 - TripleDES - 1.2.840.113549.1.12.1.3 - 1.2.840.10040.4.1 - DESede - 1.2.840.113549.1.12.1.6 - Rijndael - OID.1.2.840.113549.1.12.1.6 - OAEP - OID.1.2.840.113549.1.3.1 - DiffieHellman - PBEWithMD5AndTripleDES - DH - 1.3.14.3.2.12 - OID.1.2.840.113549.1.5.3 - DSA - OID.1.2.840.113549.1.12.1.3 - AES - 1.2.840.113549.1.3.1 - 1.2.840.113549.1.5.3 - DES - RC2 - Service Type: KeyAgreement - DiffieHellman - OID.1.2.840.113549.1.3.1 - DH - 1.2.840.113549.1.3.1 - Service Type: SecretKeyFactory - PBEWithMD5AndDES - OID.1.2.840.113549.1.12.1.6 - PBEWithSHA1AndDESede - PBEWithMD5AndTripleDES - PBKDF2WithHmacSHA1 - PBE - PBEWithSHA1AndRC2_40 - TripleDES - 1.2.840.113549.1.12.1.3 - OID.1.2.840.113549.1.5.3 - 1.2.840.113549.1.5.12 - OID.1.2.840.113549.1.5.12 - DESede - OID.1.2.840.113549.1.12.1.3 - 1.2.840.113549.1.12.1.6 - 1.2.840.113549.1.5.3 - DES - Service Type: GssApiMechanism - 1.2.840.113554.1.2.2 - Service Type: KeyFactory - RSA - DSA - 1.2.840.113549.1.1 - 1.2.840.10040.4.1 - OID.1.2.840.113549.1.1 - DiffieHellman - OID.1.2.840.113549.1.3.1 - DH - 1.2.840.113549.1.3.1 - 1.3.14.3.2.12 - Service Type: SaslServerFactory - CRAM-MD5 - DIGEST-MD5 - GSSAPI - Service Type: CertPathBuilder - PKIX - - at it.loway.tpf.transaction.cs.CryLicMan.validate(Unknown Source) - at it.loway.tpf.transaction.cs.CryFeatIniter.verify(Unknown Source) - at it.loway.app.queuemetrics.autenticazione.testNLicMod.doRun(Unknown Source) - at it.loway.tpf.transaction.servlets.LowayTransactionController.serveRequest(Unknown Source) - at it.loway.tpf.transaction.servlets.LowayTransactionController.serveRequestWrapper(Unknown Source) - at it.loway.tpf.transaction.servlets.LowayTransactionController.doPost(Unknown Source) - at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) - at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) - at sun.reflect.GeneratedMethodAccessor32.invoke(Unknown Source) - at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) - at java.lang.reflect.Method.invoke(Method.java:585) - at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:243) - at java.security.AccessController.doPrivileged(Native Method) - at javax.security.auth.Subject.doAsPrivileged(Subject.java:517) - at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:275) - at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:161) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:245) - at org.apache.catalina.core.ApplicationFilterChain.access$0(ApplicationFilterChain.java:177) - at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:156) - at java.security.AccessController.doPrivileged(Native Method) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:152) - at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) - at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) - at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) - at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) - at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) - at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) - at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:199) - at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:282) - at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:767) - at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:697) - at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:889) - at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) - at java.lang.Thread.run(Thread.java:595) - -- End Inner Exception -- - - at it.loway.tpf.transaction.cs.CryFeatIniter.verify(Unknown Source) - at it.loway.app.queuemetrics.autenticazione.testNLicMod.doRun(Unknown Source) - at it.loway.tpf.transaction.servlets.LowayTransactionController.serveRequest(Unknown Source) - at it.loway.tpf.transaction.servlets.LowayTransactionController.serveRequestWrapper(Unknown Source) - at it.loway.tpf.transaction.servlets.LowayTransactionController.doPost(Unknown Source) - at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) - at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) - at sun.reflect.GeneratedMethodAccessor32.invoke(Unknown Source) - at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) - at java.lang.reflect.Method.invoke(Method.java:585) - at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:243) - at java.security.AccessController.doPrivileged(Native Method) - at javax.security.auth.Subject.doAsPrivileged(Subject.java:517) - at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:275) - at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:161) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:245) - at org.apache.catalina.core.ApplicationFilterChain.access$0(ApplicationFilterChain.java:177) - at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:156) - at java.security.AccessController.doPrivileged(Native Method) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:152) - at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) - at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) - at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) - at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) - at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) - at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) - at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:199) - at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:282) - at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:767) - at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:697) - at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:889) - at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) - at java.lang.Thread.run(Thread.java:595) - -- End Inner Exception -- - "

--- End quote ---
After issuing a F5/Ctrl-R i got


--- Quote ---Your user session has expired. The webapp will restart automatically in a few seconds.
--- End quote ---



3/ Error Messages Language
Also a translation of error and log messages from italian to english would be quite usefull,
since not everyone speak italian fluently.

QueueMetrics:
About #1, the problem is that you should not run a report for both inbound and outbound together, unless you just want to count calls. This is because the Wait times make no sense matching together (in inbound you decide when to answer, in outbound you cannot).

About #2, this is strange and we cannot reproduce the problem. We're filing this as a bug. #408

About #3, we'll have to change that :)

silmaril:
Ok i got the #2, i had made the update from 1.4.3 to 1.4.4 the wrong way, which hasn't helped.
But tomcat is at fault too, he didn't rebuild his jsp cache, don't know why.

For the #1, yes some number aren't valid in this case, but the number of calls, length of calls are.
And anyway there is a "answered calls per direction" table, what is the use if not for this kind of thing ?

This point me to my number #4: is there a way to customize the report view (ie remove some tables)

EDIT: for the #2 in fact for grouped queue, inbound calls are correctly shown as is, it's outbond calls that
have 'Undefined' for direction. strange

QueueMetrics:
Did you do the update manually or using yum?

QueueMetrics:
So please confirm - do you still have error #2?

Navigation

[0] Message Index

Go to full version