Hi,
Is there a SAS code out there that can help me scan errors in a log file with the line number the errors occur?
for ex: check for errors, warnings and tells me what line number is that occuring..
Will appreciate any help!!
--Tej
Well, I think EG or one of the other SAS products has a summary which gives a count for each WARNING, ERROR and NOTE. I have developed a couple of these in both SAS and C#, it is a simple load text file and scan for elements you want to scan. I will not provide you code as that is proprietary, but a couple of pointers.
data ...;
infile "<your_log>"...;
input buffer $;
run;
data ...;
set <dataset above>;
if index(buffer,"ERROR") > 0 then...
run;
Gives the error description an the line of code:
Proc PrintTo Log="C:\Users\NAME\Desktop\Test_Log.Log" NEW;
Run;
Proc DO_NOT_EXIST_Print; Run; * create an error;
Proc DO_NOT_EXIST_Print; Run;
Proc DO_NOT_EXIST_Print; Run;
Proc PrintTo;
Run;
Data LogCheck;
Infile "C:\Users\NAME\Desktop\Test_Log.Log" Delimiter='09'x Missover DSD Lrecl=32767;
Informat LogLine $200.;
Format LogLine $200.;
Input Logline $;
Length Codeline $10.;
Retain CodeLine '.';
CodeLine=IfC(NotDigit(Substr(LogLine,1,1)),CodeLine,Scan(LogLine,1,' '));
If Logline=:"ERROR:" Then Output;
Run;
It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.
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.
Ready to level-up your skills? Choose your own adventure.