invoketheshell
invoketheshell

Reputation: 3897

Can you write to the sas log to indicate where a current script is, i.e. the line number for example?

I want the log to be updated mid script so I know how much of the program has completed. I know about the 'put' command but this only seems to work in the final printed '.log' file after I have recieved my notifcation as either "Exit 2","Exit 1" or "Done".

Upvotes: 2

Views: 106

Answers (1)

DomPazz
DomPazz

Reputation: 12465

In batch mode, the log is written to as the process runs. There is a buffering mechanism that means you cannot follow in perfect real time, but for big jobs it is close. Assuming (based on your command) you are on a Unix/Linix system:

tail -f blah.log

Will output the log as it is written to your terminal.

As Reeza mentioned in the comments, your other option is to write to a separate file during the run.

filename status "~/status.log";

data _null_;
file status ;
now = datetime();
put "Start at " now datetime.;
run;

<other stuff>

data _null_;
file status mod;
now = datetime();
put "I'm here at at " now datetime.;
run;

...

You can then use the same tail -f ~/status.log command to follow that file and see where processing has passed.

Upvotes: 5

Related Questions