Subject | Re: [IBO] Transaction Advice Needed |
---|---|
Author | Artur Anjos |
Post date | 2004-07-20T15:03:57Z |
Kevin Stanton wrote:
In Fulda this year Jason did a very nice presentation. It was an open
session, and Jason took some time to explain us the tools that IBO
provides us.
What I have learn from that sessions:
- To use TFrmStatus
This one I have miss from some years, and it's so simple to use! Just
put IBF_Status on your use list and somewhere in your app use the code:
with TfrmStatus.Create(Self) do
begin
FormStyle:=fsStayOnTop;
Show;
end;
That's it: a full report of what's happen, what transactions are open,
the time for OAT, etc, etc. Just take a look at it and see what I'm
talking about. It0's great to use in developing cycle.
And a few details that I had to learn by myself:
- You will need to use a IB_SessionProps in your application. I never
used it in some applications, since I use just TDataset components, and
I thought that the IB_Session was just for colors and something like
that. Well, it's not: you need it to define TimerInterval, so your
transactions could be automatic closed by IBO, if you set TimeOutProps.
- TFrmStatus will help you identify status inside your application. You
will need to make something to help you out on production: getting that
info from all workstations could be done by a timer or by a event. You
need to make something like this if you want to get stats from all
workstations in a certain time.
- Get stats from your server. Just create a simple script to get you
this. In Linux, it's very simple, something like this:
----------------- gs_hour.sh
date >> /var/log/YourLogFile.log
/opt/interbase/bin/gstat -h PathToYourDatabase | grep -E 'Oldest|Next
tran' >> YourLogFile.log
----------------------------
I hope this helps,
Artur
> Greetings,Hi Kevin,
> I've written a very large application with IBO using both TDataset and
> Native controls.
>
> My main question to the IBO experts - is there a tool/component to help me
> track down what transaction is holding up the Oldest transaction and Oldest
> active from not being incremented.
>
In Fulda this year Jason did a very nice presentation. It was an open
session, and Jason took some time to explain us the tools that IBO
provides us.
What I have learn from that sessions:
- To use TFrmStatus
This one I have miss from some years, and it's so simple to use! Just
put IBF_Status on your use list and somewhere in your app use the code:
with TfrmStatus.Create(Self) do
begin
FormStyle:=fsStayOnTop;
Show;
end;
That's it: a full report of what's happen, what transactions are open,
the time for OAT, etc, etc. Just take a look at it and see what I'm
talking about. It0's great to use in developing cycle.
And a few details that I had to learn by myself:
- You will need to use a IB_SessionProps in your application. I never
used it in some applications, since I use just TDataset components, and
I thought that the IB_Session was just for colors and something like
that. Well, it's not: you need it to define TimerInterval, so your
transactions could be automatic closed by IBO, if you set TimeOutProps.
- TFrmStatus will help you identify status inside your application. You
will need to make something to help you out on production: getting that
info from all workstations could be done by a timer or by a event. You
need to make something like this if you want to get stats from all
workstations in a certain time.
- Get stats from your server. Just create a simple script to get you
this. In Linux, it's very simple, something like this:
----------------- gs_hour.sh
date >> /var/log/YourLogFile.log
/opt/interbase/bin/gstat -h PathToYourDatabase | grep -E 'Oldest|Next
tran' >> YourLogFile.log
----------------------------
I hope this helps,
Artur