---------------------------------------------------------------------------
HARBOR: http://coolharbor.100free.com/index.htm
Now Tomcat is also a cool pojo application server
---------------------------------------------------------------------------
David, have you looked at this...
https://tcpmon.dev.java.net/source/browse/tcpmon/
Its going to be easy... because it almost does what you want already.
It does mean that in TC you will change the connector port to say 8081
But the clients will still see 8080
ie [Client whether that be Browser or Apache] --- 8080[Billing
System]8081 ----- [TC]
So you dont mess with TC's internal stable code (what are you going to do
with the data if you do that?).... keep it outside.
Ig start writing reports to disk from TC's buffer socket.... I think you
going to kill TC's performance, so then you going to want to sneak the data
into a filter or create a special header.... oh boy!
Now... if you build your tunnel (Billing System) in a servlet....
From your admin port say (8085) you from a browser, simple start/stop
Billing System.
As soon as that happens clients can see TC, and if the billing system is
off.... clients are off.
Then you also have a way to get data.... you can ask the Billing System...
how many bytes for Client IP xyz (its a servlet), etc.
When you business get huge with load sharing and remote offices.... the
billing system is just a servlet, so its easy.
I would keep it outside of TC.... but put it in a servlet.
If you CVS that swoftware down I think you going to find the relay socket
logic is probably 30 lines of code... it listens and forwards, cant be too
bad...
And then... if you want (unlikely) you embed your special servlet in TC, and
add some xml configuration...
My 1/2 cent worth ;)
----- Original Message -----
From: "Dave Rathnow" <[EMAIL PROTECTED]>
To: "Tomcat Developers List" <dev@tomcat.apache.org>
Sent: Friday, October 26, 2007 11:58 PM
Subject: RE: Measuring bytes sent and received from and to Tomcat
I took a look at lamdaprobe but it only counts the payload and not the
HTTP request.
Back to my original question.....can anyone help?
-----Original Message-----
From: Henri Gomez [mailto:[EMAIL PROTECTED]
Sent: October 26, 2007 05:31 AM
To: Tomcat Developers List
Subject: Re: Measuring bytes sent and received from and to Tomcat
Well it should works since the Lamba Probe, got these numbers for HTTP
and AJP.
ie :
http://www.lambdaprobe.org/d/screenshots/full/charts.png
Regards
2007/10/25, Dave Rathnow <[EMAIL PROTECTED]>:
Hello Again,
I was wondering if someone could give me some help with this. I think
using a connector is probably the way to go to solve this problem;
however, I'm not sure where to start. How do I create my own
connector and the plumb it into Tomcat so it will be used. I will be
using a separate port other than 8080 for the devices that will be
sending and receiveing data so, if possible, I would like to leave the
default connector on port 8080.
Again, I don't want to reimplement the code that parses the HTTP. All
I need to do is count the number of bytes arriving and being sent so
if I can reuse code from an existing connector, that would be great.
Thanks,
Dave.
-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Costin
Manolache
Sent: October 22, 2007 04:50 PM
To: Dave Rathnow
Cc: Tomcat Developers List
Subject: Re: Measuring bytes sent and received from and to Tomcat
Well, if you want absolute byte - connector seems the only place,
there are space and tabs beeing skipped when parsing headers, etc.
If you are ok with an estimate - the AccessLogValve is ok, add all the
header lengths + method + http/1.1. You'll miss bytes for encodings,
spaces.
Re. where to add - each connector is different on how it reads/parse
the message, you probably want to do it close to the 'read()' call,
save it somewhere associated with the request ( a note or attribute )
and read it in a valve or filter.
Costin
On 10/22/07, Dave Rathnow <[EMAIL PROTECTED]> wrote:
>
>
> I looked at connectors but wasn't sure if this was what I wanted.
> To avoid anther wild goose chase I decided to ask. Can you point me
> in the direction of some documentation where I might be able to get
started?
>
> Dave.
>
> -----Original Message-----
> From: Costin Manolache [mailto:[EMAIL PROTECTED]
> Sent: October 22, 2007 04:28 PM
> To: Tomcat Developers List
> Subject: Re: Measuring bytes sent and received from and to Tomcat
>
> 'bytes' should be counted at a lower level, in connector. I'm not
> sure
> this is something generic enough - but you can make some changes to
> your tomcat, where read() is done from socket.
>
> I guess it would be nice to have a JMX graph with bytes/sec in/out.
>
> Costin
> 'bytes'
>
> On 10/22/07, Dave Rathnow <[EMAIL PROTECTED]> wrote:
> >
> >
> > We looked at using a valve but we weren't sure if it would work.
> > Correct me if I'm wrong, but it appears as though valves are
> > chained
> > together in a calling sequence and that some valves could change
> > the
> > content of the request or response. This means we may not get an
> > accurate measure of the number of total number bytes that make up
> > the request.
> >
> > Also, the AccessLogValve has a pattern code to get the number of
> > bytes
>
> > sent, excluding the HTTP headers, but does not have a pattern code
> > to get the number of bytes sent, including the HTTP headers, which
> > is what we really need.
> >
> > Have I missed something?
> >
> > Dave.
> >
> >
> > -----Original Message-----
> > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On
> > Behalf
> > Of Yoav Shapira
> > Sent: October 22, 2007 02:36 PM
> > To: Tomcat Developers List
> > Subject: Re: Measuring bytes sent and received from and to Tomcat
> >
> > Hey,
> >
> > On 10/22/07, Dave Rathnow <[EMAIL PROTECTED]> wrote:
> > > Is there a way we can do the same thing with Tomcat? It's
> > > simple for us to measure the number of byte in the payload of
> > > the HTTP request/response, however that isn't enough. We need
> > > to know the total number of bytes being sent and received for
> > > each HTTP
request.
> > >
> > > Can someone suggest a way I could get an accurate count of these
> > bytes?
> >
> > You can probably start with the AccessLogValve that ships with
Tomcat:
> > http://tomcat.apache.org/tomcat-6.0-doc/config/valve.html
> >
> > Out of the box it will get you the complete bytes in the response.
> > See the above docs on how to configure that. If you want to log
> > the
> > complete bytes on the request, I think you'll have to extend the
> > Valve, but it should be pretty easy to do.
> >
> > Yoav
> >
> > ------------------------------------------------------------------
> > --
> > - To unsubscribe, e-mail: [EMAIL PROTECTED] For
> > additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
> > ------------------------------------------------------------------
> > --
> > - To unsubscribe, e-mail: [EMAIL PROTECTED] For
> > additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED] For
additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED] For additional
commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]