2
votes

I am using Enterprise Guide 4.2 (no choice about this).

I am using PROC APPEND to append about 80k+ observations to a SQL Server table. I believe that there are some issues with the format of the data (such as mismatching variable lengths), but it executes just fine and the table is updated. Then, Enterprise Guide gives me the following message:

The contents of Log(af771r01 (Process Flow)) is too large to display. The window will close, but the contents will remain in the project.

I was able to successfully disable the log by redirecting it to a dummy file:

** The Append Proc below outputs 80k+ lines (in theory) to the log, crashing EG 4.2;
** This statement will temporarily disable logging;
FILENAME JUNK DUMMY;
PROC PRINTTO
     LOG=JUNK;
RUN;

** ========================================================
** Archive Summarized Enrollment Data
** ========================================================;
PROC APPEND BASE = Archive.MnthlyMbrCmpArch (
                       SASDATEFMT=(SYS_SRC_LOAD_DT='mmddyy10.')
                   )
            DATA = Work.R1_MBR_ENRL_ARCHIVE;
RUN;

** Reenable logging;
PROC PRINTTO;
RUN;

This prevents EG from crashing, but I'm losing all of the warning and error messages. I am trying to debug the statement so I want the warnings and errors, I just don't want a flooded log.

Is there a way to partially disable logging without turning it off completely? Or is there a way to redirect the log to a file so that EG doesn't crash while trying to not open it?

I am new to SAS and am open to any suggestions, even if they do not directly answer the question.

2

2 Answers

1
votes

Yes, you can redirect the log to a file by specifying a path in the FILENAME statement (instead of saying DUMMY, which refers to a non-existing file):

FILENAME JUNK 'path/file-name.log';

Of course, you must have "write" permission to the location you specify.

1
votes

You can suppress a lot of information from the log by using:

options nonotes nonotes2;

And/or:

options nomprint nomlogic nosymbolgen nomacrogen; /* IF CODE CONTAINS MACROS */

Errors will still be printed to the screen but you would have little information to debug them unless you turned the logging back on.

Some SAS Documentation: http://support.sas.com/documentation/cdl/en/basess/58133/HTML/default/viewer.htm#a001906177.htm