The initialization
and termination records give you summary information for each SAS
OLAP Server session. The ARM records for the SAS OLAP Server are written
to the SAS logging facility or the ARM log. The following explains
the output:
I (initialization) record
is an initialization
record, with one record written per SAS OLAP Server invocation when
the ARM subsystem is initialized. It starts with an I, followed by:
-
the SAS datetime value of the SAS
OLAP Server invocation
-
-
-
a system CPU (start) time
-
an application name (OLAP_SERVER)
I,1320592800.822000,2,0.380547,0.630907,OLAP_SERVER,
is a termination record,
with one record written per SAS OLAP Server termination. It starts
with an E, followed by:
-
the SAS datetime value of the SAS
OLAP Server termination
-
the application ID from the I record
-
-
E,1320592802.805000,2,1.281843,0.791137
Note: The E records are written
for the OLAP_SESSION transaction, which records each SAS OLAP Server
session that is started by a client connection. The E records provide
the user ID of the client user that started the SAS OLAP Server session.
is an OLAP_SESSION
transaction record, with one record written per SAS OLAP Server invocation.
It starts with a G, followed by:
-
the SAS datetime value when the
record was written
-
the application ID from the I record
-
-
a transaction class name (OLAP_SESSION)
-
a transaction class description
(OLAP Session)
-
a description of the values that
are provided in subsequent S (start) and P (stop) records
G,1337615817.801000,2,1,OLAP_SESSION,OLAP
Session,User Name,LongStr
Note: User Name
is the user ID of the client user that started the SAS OLAP Server
session.
is a start record,
with one record written for each SAS OLAP Server session. It starts
with an S, followed by:
-
the SAS datetime value when the
SAS OLAP Server session started
-
the application ID from the I record
-
the transaction class ID from the
G record
-
-
-
a system CPU (start) time
-
the user ID of the client user
S,1337615818.502000,2,1,2,2.52952,0.901296,sasabc
is a stop record, with
one record written for each SAS OLAP Server session. It starts with
a P, followed by:
-
the SAS datetime value when the
SAS OLAP Server session ended
-
the application ID from the I record
-
the transaction class ID from the
G record
-
the transaction ID from the associated
S record
-
-
-
P,1337615819.383000,2,1,2,2.113038,0.931339,0
is an update record,
with one record written for each hierarchy in each OLAP cube. The
U record for the OLAP_SESSION transaction is written only when the
DATA_QUERY transaction occurs. It starts with a U, followed by:
-
the SAS datetime value when the
record was written
-
the application ID from the I record
-
the transaction class ID from the
G record
-
the transaction ID from the S record
-
-
-
a buffer type (always 2, which
indicates that 1,024 bytes of text follows)
-
a string with the following format:
-
-
char(4) hierarchy number—used
in the DATA_QUERY update record to identify region and aggregation
-
-
char(4) number of hierarchy levels
U,1355324046.943000,2,1,2,1.625000,2.15625,2,SALES
1CUSTOMER 4
U,1355324046.943000,2,1,2,1.625000,2.15625,2,SALES
2PRODUCT 5
U,1355324046.943000,2,1,2,1.625000,2.15625,2,SALES
3TIME 4
The following records
are written for MDX_QUERY transactions, which log each query that
is sent to the OLAP cube. These records provide the cube name and
the size of the result set in cells:
is an MDX_QUERY transaction
record, with one record written per SAS OLAP Server invocation. It
starts with a G, followed by:
-
the SAS datetime value when the
record was written
-
the application ID from the I record
-
-
a transaction name (MDX_QUERY)
-
a transaction description (MDX
Query)
-
a description of the values that
are provided in subsequent S or C (start) and P (stop) records
G,1320594857.747000,3,2,MDX_QUERY,MDX
Query,Result Set Size,Gauge32,Cube Name,LongStr
Note: Result Set
Size
is the size of the result set in cells.
Cube Name
is the name of the cube that is being queried.
is a start record,
with one record written for each MDX_QUERY transaction. It starts
with an S, followed by:
-
the SAS datetime value when the
MDX_QUERY started
-
the application ID from the I record
-
the transaction class ID from the
G record
-
-
-
a system CPU (start) time
S,1320594857.787000,3,2,2,1.341929,0.731051
If the OLAP_SESSION
level was also requested, then the MDX_QUERY transaction record is
correlated to its parent session record, and starts with a C, followed
by:
-
the SAS datetime value when the
MDX_QUERY started
-
the application ID from the I record
-
the transaction class ID from the
G record
-
-
the parent transaction class ID
-
the parent transaction ID
-
-
a system CPU (start) time
C,1320594857.787000,3,2,2,1,2,1.341929,0.731051
is a stop record, with
one record written for each MDX_QUERY transaction. It starts with
a P, followed by:
-
the SAS datetime value when the
MDX_QUERY ended
-
the application ID from the I record
-
the transaction class ID from the
G record
-
the transaction ID from the associated
S or C record
-
-
-
a status (0=OK, 2=query failed)
-
the size of the result set in cells
-
the name of the cube that was queried
P,1320594858.948000,3,2,2,2.52952,0.781123,0,5,MDDBCARS
The following records
are written for DATA_QUERY transactions, which log each region execution
(that is, each data retrieval from stored OLAP cube aggregations or
from the cache). The following records provide region IDs, aggregate
IDs, the number of returned records, the source type, and the thread
index. The DATA_QUERY transaction is the primary input for both automatic
and manual cube optimization.
is a DATA_QUERY transaction
ID record, with one record written per SAS OLAP session. It starts
with a G, followed by:
-
the SAS datetime value when the
record was written
-
the application ID from the I record
-
-
the transaction name (DATA_QUERY)
-
the transaction description (Plug-in
Call)
-
a description of the values that
are provided in subsequent S or C (start) and P (stop) records. The
values are:
G,1359310645.798000,2,4,DATA_QUERY,Plugin
Call,Query Aggregate,Id32,Source Aggregate,Id32,Result Set Size,Gauge32,Source
Type,Id32,Thread Index,Gauge32,Cube Name,LongStr
S or C (start subquery) record
is a start subquery
record, with one record written for each data access. It starts with
an S, followed by:
-
the SAS datetime value when the
subquery started
-
the application ID from the I record
-
the transaction class ID from the
G record
-
-
-
the system CPU (start) time
S,1320596204.653000,2,2,2,1.51512,0.630907
If the MDX_QUERY level
was also requested, then the DATA_QUERY transaction record is correlated
to its parent MDX_QUERY record, and starts with a C, followed by:
-
the SAS datetime value when the
subquery started
-
the application ID from the I record
-
the transaction class ID from the
G record
-
-
the parent transaction class ID
-
the parent transaction ID
-
-
a system CPU (start) time
C,1320596204.653000,2,2,2,1,1,1.51512,0.630907
is a stop subquery
record, with one record written for each data access. It starts with
a P, followed by:
-
the SAS datetime value when the
subquery ended
-
the application ID from the I record
-
the transaction class ID from the
G record
-
the transaction ID from the S or
C record
-
-
-
a status (0=OK, 2=subquery failed)
-
a region sequential number (per
update record)
-
an aggregation sequential number
(per update record)
-
the size of the result set in records
-
the plug-in type (0=CSPDS, 1=CSAS,
2=CACHE, 3=MOLAP)
-
-
P,1320596205.485000,2,2,2,1.181699,0.670964,0,1,31,5,0,0,SALES
is an update record,
with one record written for each new region and stored aggregation.
It starts with a U, followed by:
-
the SAS datetime value when the
record was written
-
the application ID from the I record
-
the transaction class ID from the
G record
-
the transaction ID from the S record
-
-
-
a buffer type (always 2, which
indicates that 1,024 bytes of text follows)
-
a string with the following format:
-
-
char(16) unique sequential number—used
in the DATA_QUERY stop record to identify region and aggregation
-
char(4) number of hierarchies in
the region or aggregation repeated for each hierarchy in the region
or aggregate:
-
char(4) hierarchy number (per OLAP_SESSION
update record)
-
U,1355324092.960000,2,3,61,6.93750,5.734375,2,SALES
4 1 1 1
The following update
record is written for the MDX_STRING transaction, which writes an
additional record for the MDX_QUERY transaction. The record contains
the actual MDX query string.
is an update record,
with one record written for each MDX_STRING transaction. It starts
with a U, followed by:
-
the SAS datetime value when the
record was written
-
the application ID from the I record
-
the transaction class ID from the
G record
-
the transaction ID from the S record
-
-
-
a buffer type (always 2, which
indicates that 1,024 bytes of text follows)
-
U,1320589796.262000,2,1,1,0.670964,2,SELECT
{[DATE].[DATEH].[ALL DATE]. CHILDREN} ON COLUMNS,
{[MEASURES].[MEASURES].[SALES_SUM]} ON ROWS FROM MDDBCARS
When using the SAS logging
facility and ARM 2.0, these records are written to ARM2.RECORD.