Hello,
I am writing to program to retrieve data from databases (MS SQL, MS Access, etc) using Proc SQL in Base SAS. Since I do not know if the SQL statement may take too long and ends up freezing SAS, I would like to time the excution, i.e have a piece of code directly within the program that tracks how long the query has been running and if it runs for too long (say more than a few minutes) then terminates the execution. Could you please give me some advice?
Thank you,
Vi
I don't think you can do this from within one SAS program (although I'd love to been shown otherwise!). I have some code that I created that outputs data (timestamp + descriptive text basically) to a text file (using FILENAME, FPUT, FAPPEND, etc) so I can monitor the process of an ongoing job, and you could probably combine something like that with a shell script that monitors that text file and kills the SAS job if it's not seeing progress.
I don't think you can do this from within one SAS program (although I'd love to been shown otherwise!). I have some code that I created that outputs data (timestamp + descriptive text basically) to a text file (using FILENAME, FPUT, FAPPEND, etc) so I can monitor the process of an ongoing job, and you could probably combine something like that with a shell script that monitors that text file and kills the SAS job if it's not seeing progress.
Available on demand!
Missed SAS Innovate Las Vegas? Watch all the action for free! View the keynotes, general sessions and 22 breakouts on demand.
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.