testdriven / psi-probe

Advanced manager and monitor for Apache Tomcat, forked from Lambda Probe
8 stars 1 forks source link

View list of errors for specified Tomcat application #339

Open padcom opened 10 years ago

padcom commented 10 years ago

From milosz.e...@gmail.com on March 25, 2013 11:05:15

Please describe the feature you would like to see added. I would like to be able to see error list in application menu. As for know, we can see that some application has errors, but none are listed anywhere (apart from error count+graph). How will this feature make Probe better? This will allow Probe to be powerfull debugger for Tomcat.

Original issue: http://code.google.com/p/psi-probe/issues/detail?id=339

padcom commented 10 years ago

From MALfunct...@gmail.com on March 26, 2013 15:23:37

Those errors correspond to HTTP response codes in the 4xx and 5xx range that the application returns. How do you propose that Probe exposes these errors?

Status: NeedInfo

padcom commented 10 years ago

From milosz.e...@gmail.com on March 28, 2013 06:06:41

I can imagine, that in Applications menu there would be column called "ERR" like in particular app menu. That number would be "clickable" and list of ERROR codes would be displayed. It should read the codes when clicked otherwise it can consume a lot of resources.

padcom commented 10 years ago

From MALfunct...@gmail.com on March 28, 2013 11:19:34

Codes alone won't be useful, though. How will you know which request generated that error? We'd need to track what the original request was.

Of course, there's a problem with that too. Once the request/response cycle is complete, Probe (or indeed any Java web app) no longer has access to the Request or Response. This means we'd have to store a copy of the request data in memory for every request that returns an error. The infrastructure is already in place for this (it powers the graphs), but if we're storing the whole request for each error, that has the potential to be a lot of data, especially if your app is being crawled by a web crawler and generating a lot of 404s.

It's a good idea. We just need to figure out how to make it useful without using up too much memory.

padcom commented 10 years ago

From milosz.e...@gmail.com on March 29, 2013 05:34:22

Thats exacly what i meant. We cannot allow to keep every response in memory. For example my tomcat deployment has over 30 servlets and its serving 100s thousands requsts daily along with data counted in gigabytes. I think listing only ERROR type would be good OR keeping only errors which aren't: authentication failure etc, basically where users most likely did something wrong.

padcom commented 10 years ago

From MALfunct...@gmail.com on March 29, 2013 06:59:17

We can probably afford to capture the request URL and response code for all errors. Then we can have a configurable parameter where a server admin can list the error codes where Probe should capture the entire request/response. For example, you might want to capture that information on a 500 error so you can reproduce the problem in your own application.

Thoughts?

padcom commented 10 years ago

From milosz.e...@gmail.com on April 08, 2013 05:36:23

I think its a good idea. We don't want to collect all the errors given by http. Also retrieving errors and warnings from tomcta itself