SAS Data Integration Studio, DataFlux Data Management Studio, SAS/ACCESS, SAS Data Loader for Hadoop and others

ARM logs miss general records(I,E,G)

Accepted Solution Solved
Reply
Regular Contributor
Posts: 160
Accepted Solution

ARM logs miss general records(I,E,G)

Hi,

Small code below (with ARM options) works correct on SAS 9.1 on Window OS:

      /*Force ARM logs writes to file on server*/

      filename armLog "...\ARM.log";

      option  armloc=armLog;

      /* Needed only general info = start/end of whole SAS code, start/end of each data step and procedure*/

      option  armsubsys=(ARM_DSIO OPENCLOSE , ARM_PROC);

            /*start SAS code*/

            data test1;

                  sl=sleep(3,1);

            run;

            data test1;

                  sl=sleep(5,1);

            run;

            /*End SAS code*/

            /*Redirect ARM logs into temporary work file*/

      filename LogEND "...\ARM_end.log";      

      options armsubsys=(ARM_NONE) armLoc=LogEND;

So SAS code higher ganarate expected result(ARM log) on SAS 9.1:

I,1701768346.106000,4,29.296875,9.390625,SAS,userKode

G,1701768346.106000,4,7,MVA_DSIO.OPEN_CLOSE,DATA SET OPEN/CLOSE,LIBNAME,ShortStr,MEMTYPE,ShortStr,MEMNAME,LongStr

G,1701768346.106000,4,8,PROCEDURE,PROC START/STOP,PROC NAME,ShortStr

S,1701768346.106000,4,8,21,29.296875,9.390625,DATASTEP

S,1701768346.106000,4,7,22,29.296875,9.390625,WORK    ,DATA    ,TEST1                      

P,1701768349.106000,4,7,22,29.296875,9.390625,0,WORK    ,DATA    ,TEST1                      

P,1701768349.106000,4,8,21,29.296875,9.390625,0

S,1701768349.106000,4,8,23,29.296875,9.390625,DATASTEP

S,1701768349.106000,4,7,24,29.296875,9.390625,WORK    ,DATA    ,TEST1                      

P,1701768354.106000,4,7,24,29.296875,9.390625,0,WORK    ,DATA    ,TEST1                      

P,1701768354.106000,4,8,23,29.296875,9.390625,0

E,1701768354.106000,4,29.296875,9.390625

But on SAS 9.3(AIX OS) results are different, general records("I" - initialization,"G"-GetId,"E"-End), are missed in result ARM file so ARM log on SAS 9.3 looks like:

S,1701768346.106000,4,8,21,29.296875,9.390625,DATASTEP

S,1701768346.106000,4,7,22,29.296875,9.390625,WORK    ,DATA    ,TEST1                      

P,1701768349.106000,4,7,22,29.296875,9.390625,0,WORK    ,DATA    ,TEST1                      

P,1701768349.106000,4,8,21,29.296875,9.390625,0

S,1701768349.106000,4,8,23,29.296875,9.390625,DATASTEP

S,1701768349.106000,4,7,24,29.296875,9.390625,WORK    ,DATA    ,TEST1                      

P,1701768354.106000,4,7,24,29.296875,9.390625,0,WORK    ,DATA    ,TEST1                      

P,1701768354.106000,4,8,23,29.296875,9.390625,0

So can someone help me with delivering these general records into ARM log on SAS 9.3?

Additional info:

If run SAS code above first time on 9.3(first time after SAS session creation) - ARM log file miss only last "E" row, all rest needed row occurs in ARM log file:

I,1701768346.106000,4,29.296875,9.390625,SAS,userKode

G,1701768346.106000,4,7,MVA_DSIO.OPEN_CLOSE,DATA SET OPEN/CLOSE,LIBNAME,ShortStr,MEMTYPE,ShortStr,MEMNAME,LongStr

G,1701768346.106000,4,8,PROCEDURE,PROC START/STOP,PROC NAME,ShortStr

S,1701768346.106000,4,8,21,29.296875,9.390625,DATASTEP

S,1701768346.106000,4,7,22,29.296875,9.390625,WORK    ,DATA    ,TEST1                      

P,1701768349.106000,4,7,22,29.296875,9.390625,0,WORK    ,DATA    ,TEST1                      

P,1701768349.106000,4,8,21,29.296875,9.390625,0

S,1701768349.106000,4,8,23,29.296875,9.390625,DATASTEP

S,1701768349.106000,4,7,24,29.296875,9.390625,WORK    ,DATA    ,TEST1                      

P,1701768354.106000,4,7,24,29.296875,9.390625,0,WORK    ,DATA    ,TEST1                      

P,1701768354.106000,4,8,23,29.296875,9.390625,0

Next time when I run same code  - ARM log file again miss all general records -initial ("I", "G") and last "E" record.

It probably means that on SAS 9.3 ARM logging don't finish(turn-off) correctly after setting options below:

options armsubsys=(ARM_NONE) armLoc=LogEND;

or

options armsubsys=(ARM_NONE) armloc="_NULL_";


May be some additional options should be set to close it correctly?

Thanks!


Accepted Solutions
Solution
‎12-15-2013 07:38 PM
Trusted Advisor
Posts: 1,300

Re: ARM logs miss general records(I,E,G)

      filename armLog "...\ARM.log";

      option  armloc=armLog;

      option  armsubsys=(ARM_DSIO OPENCLOSE , ARM_PROC);

%let _armexec = 1;

%let _armacro = 1;

%arminit(appname='myappname is this', appuser="&sysuserid", appidvar=myapp)

            /*start SAS code*/

            data test1;

                  sl=sleep(3,1);

            run;

            data test1;

                  sl=sleep(5,1);

            run;


%armend(appidvar=myapp)

            /*End SAS code*/

            /*Redirect ARM logs into temporary work file*/

      filename LogEND "...\ARM_end.log";     

      options armsubsys=(ARM_NONE) armLoc=LogEND;

View solution in original post


All Replies
SAS Employee
Posts: 1

Re: ARM logs miss general records(I,E,G)

Yura, Hope you are well. Right now the SAS Product Portfolio and in particular the SAS 9.X Products are optimized for X86 Architecture. If your goal is to run SAS 9.X on an arm class server you are likely to run into many issues due to certification and optimization tuning that has not been fully vetted or is indeed supported by SAS Products. There is one exception for visualization. For a particular class of client device you are able to run procedures that allow you to view the data via the Portal Software on the ARM based client device. I would suggest you review the platform requirements of the SAS Product Suite to ensure any load and install efforts you are making are aligned with the supported architecture and system requirements. Please let me know if this makes sense and if I can be of further assistance. Best Regards Tony

Trusted Advisor
Posts: 1,300

Re: ARM logs miss general records(I,E,G)

ARM (Application Response Measurement) is not related to ARM Processor Architecture

Since 9.1 there have been substantial changes to ARM logging, including moving from ARM 2.0 to ARM 4.0 standard. 

It is a bit peculiar that you are missing to E (end) records.

Are you running in these processes as a batch job or through a client interface?

Solution
‎12-15-2013 07:38 PM
Trusted Advisor
Posts: 1,300

Re: ARM logs miss general records(I,E,G)

      filename armLog "...\ARM.log";

      option  armloc=armLog;

      option  armsubsys=(ARM_DSIO OPENCLOSE , ARM_PROC);

%let _armexec = 1;

%let _armacro = 1;

%arminit(appname='myappname is this', appuser="&sysuserid", appidvar=myapp)

            /*start SAS code*/

            data test1;

                  sl=sleep(3,1);

            run;

            data test1;

                  sl=sleep(5,1);

            run;


%armend(appidvar=myapp)

            /*End SAS code*/

            /*Redirect ARM logs into temporary work file*/

      filename LogEND "...\ARM_end.log";     

      options armsubsys=(ARM_NONE) armLoc=LogEND;

Regular Contributor
Posts: 160

Re: ARM logs miss general records(I,E,G)

Hi Fried,

Thanks, now ARM facility works correctSmiley Happy.

☑ This topic is SOLVED.

Need further help from the community? Please ask a new question.

Discussion stats
  • 4 replies
  • 501 views
  • 3 likes
  • 3 in conversation