Jump to content


Click the link below to see the new game I'm developing!


Photo
- - - - -

When a function was last run?


5 replies to this topic

#1 Chi Sum Cheung

Chi Sum Cheung

    Member

  • Members
  • PipPip
  • 15 posts
  • Gender:Male
  • Location:Perth, Australia

Posted 04 December 2003 - 02:03 AM

Hi All,

Was just wondering if it was possible to track the date of when a function was last run. I know theres dates for when it was last edited and last genned, but is there one for when the function was last called/executed? If so, how would you go about getting to it?

Thanks,
Chi

#2 Rob Donovan

Rob Donovan

    rob@proivrc.com

  • Admin
  • 1,652 posts
  • Gender:Male
  • Location:Spain

Posted 04 December 2003 - 02:24 AM

Hi,

No, there is not a date or time of when a function was last run.

However, if you really wanted to 'track' functions being run etc, you could try turning on some of the TRACE commands, at a low level.

Or you could look at PROSTAT & RUNSTAT, that also logs each function being run.

These options could create large files and if your system running slow or under resourced, then you might find things slowing down a bit with the trace on at a high level.

Try this post... http://www.proivrc.c...t=ST&f=2&t=1303

Rob D.

#3 Clarence Owens

Clarence Owens

    Member

  • Members
  • PipPip
  • 10 posts
  • Gender:Male
  • Location:Apex, NC USA

Posted 04 December 2003 - 01:19 PM

Don't know whether you are a Glovia user, but in Glovia 5.4 the Superlayer language processor adds calls to the Pro-IV code that track the last 40 executions of each function in the file SLTRNHIS. Well, it tracks *most* functions anyway and it's been quite handy at times. I wrote a screen to display a portion of the file and a report to display all 40 entries for the selected function. The SLTRNHIS file def may only have been present in Pro-IV and if so I migrated it to Superlayer.

#4 Joseph Bove

Joseph Bove

    ProIV Guru

  • Members
  • PipPipPipPipPip
  • 756 posts
  • Gender:Male
  • Location:Ramsey, United States

Posted 24 December 2003 - 03:27 PM

Chi,

We built a "Big Brother" type audit that simply tracks every time a user enters a function.

This is relatively easy to do. A global update is inserted into the start of every function. It posts the date, time, operator and function name to an audit file.

Our pre-gen routines make sure that the global function call is inserted into every function before it is genned.

This does create massive audits but has proved to be absolutely invaluable for researching software issues. The audits are in ProISAM, with a unique audit created each month. The file names are syYYMM.pro, so it is very easy to purge old audits.

Regards,

#5 Vol Yip

Vol Yip

    ProIV Guru

  • Members
  • PipPipPipPipPip
  • 393 posts
  • Gender:Male
  • Location:Hong Kong

Posted 26 December 2003 - 03:45 AM

Hi Joesph,

Do you mean the your global lscall will track whatever function type, not only Screen but also U or LU etc? That will be a big audit file I guess.

BTW, be "pre-gen" routine do you mean we need to amend the pro-iv kernel in order to make sure that each function has included the global lscall during gen time? How do we do that? Appreciated your info.

Regards,

Vol

#6 Joseph Bove

Joseph Bove

    ProIV Guru

  • Members
  • PipPipPipPipPip
  • 756 posts
  • Gender:Male
  • Location:Ramsey, United States

Posted 26 December 2003 - 09:54 PM

Vol,

Yes, we track every function that is run... Screen, Global Screen, Update, Global Update, etc.

For many years we have signed an agreement with ProIV for access to the bootstraps. Through the knowledge of the bootstraps, we have written a number of pre-gen utilities to make life simpler and faster. Among them are the following tools:

1) Inserting the global tracking function into every function
2) Enforce special rules for reports
3) Appropriately set the correct backgrounds for all screen functions
4) Put the help topic ID into each LS of a function that will have on-line help
5) Imbed logic to force COMMITs when the client is running ProIV against an Oracle database


The programmers never have to worry about doing any of these above functions...

Regards,

Joseph



Reply to this topic



  


0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Click the link below to see the new game I'm developing!