Hello,
I'm new with SAS. One of my users encounter the following issue:
When he ran a EG Project, the run is blocked when a graph should be produced.
And I don't understand why it is blocked.
I noticed some PNG files (gplotxxx.png) are stored in SAS/Config/Lev1/SASApp.
Do you have any ideas on how I can resolve these issues.
thanks
I know why EG was freezing when producing graphs. It was due to an option in EG: Graph Format.
You can find this option:
Graph Format was configured with 'ActiveX' engine. It means a process is launched on the compute server but this process is freezing. Maybe I've to apply a hotfix for that.
By changing Graph Format from 'ActiveX' to 'PNG', the EG project runs successfully.
Many thanks for your help.
Now, I will work to apply the baseline security to avoid gplot files to be stored in /SAS/Config/Lev1.
Hey @maubry ,
first up it is always helpful to post the exact error message (of course redacting file paths were necessary) and post an example coding so it is easier to see the context of your problem.
The error tells you that your user can not access that location (write access is necessary) but it is understandable that you wouldn't want to give users write access to that location as there are a lot of config and other important files stored there.
So what you can do is have your user change up there coding to specify a concrete path where SAS should store the image - something like this:
options printerpath=png nodate;
ods html close;
ods printer file="~/test.png";
proc sgplot data=sashelp.stocks
(where=(date >= "01jan2000"d and stock = "IBM"));
title "Stock Trend";
series x=date y=close;
series x=date y=low;
series x=date y=high;
run;
ods printer close;
ods html file="~/test.html";
Here you can find more information on it: https://go.documentation.sas.com/?cdcId=pgmsascdc&cdcVersion=9.4_3.5&docsetId=graphref&docsetTarget=...
Best regards
David
Hi @DavidHD ,
by freezing, it means we have to kill EG.
I read logs:
for your information, graph stay in yellow. What does it mean? (no task was running).
@DavidHD ,
We have made a test this morning. We ran the EG Project step by step. Everything working fine before graph. After the last query builder, there are 2 graph. We ran the 1st graph and it works.
But by running the 2nd graph, it takes time..
I read the log more in depth and I found something:
the graph is looping and it is waiting for something.
What I saw in the Enterprise Guide log is many lines like:
DEBUG SAS.EG.JobManagement.Adapters.WorkspaceExecutor[(null)] - SafeCheckIfServerIsAlive() - Entering DEBUG SAS.BI.SASComb.Method[(null)] - InvokeMethod::Async DEBUG SAS.BI.SASComb.Method[(null)] - Leaving for Async DEBUG SAS.EG.JobManagement.Adapters.WorkspaceExecutor[(null)] - SafeCheckIfServerIsAlive() - Leaving
Any ideas?
@DavidHD ,
The dataset is very small (around 49 observations).
The user kills the process after 3 hours...
The version of EG is 7.15 HF9 (7.100.5.6226) (32 bits)
Our SAS version is 9.4M5
I know why EG was freezing when producing graphs. It was due to an option in EG: Graph Format.
You can find this option:
Graph Format was configured with 'ActiveX' engine. It means a process is launched on the compute server but this process is freezing. Maybe I've to apply a hotfix for that.
By changing Graph Format from 'ActiveX' to 'PNG', the EG project runs successfully.
Many thanks for your help.
Now, I will work to apply the baseline security to avoid gplot files to be stored in /SAS/Config/Lev1.
The png files in the configuration directory can come from two issues:
IIRC, the second should also not be possible because the SAS installation user does not end up in the metadata per default.
Hello Kurt,
I actually have a permission problem, and the directory is writable for end users.
Thank you for your answser.
Michael
I don't try your code because I can't access to the EG Project. I need to contact the user when he's available. I'll do that with him.
Normal users must not have write-access to SAS/Config/Lev1/SASApp. So the first step is to shut down the whole system and apply the security admin guide. If the guide is not applied any user can cause serious damage to the configuration.
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
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.