Through this property, you can obtain specific and advanced information about a GAM Session; for example, filter those sessions that failed because of a Permission violation.
More specifically, FullLog is a GAMSessionLog object property. It allows retrieving a GAMSessionFullLog collection that contains detailed information about a GAM Session, when Generate Session Statistics GAMRepository property is set to "Full Log".
The advanced information about a GAM Session can be obtained through the FullLog property. That information can be filtered using the GAMSessionLogType property of the GAMSessionFullLog object. GAMSessionLogType is a domain object and, for the time being, its only possible value is "CheckPermissionFail".
If you are programming a "Work With GAM Sessions", you can choose to get the GAMSessionFullLog collection for each GAM Session (1).
In this case, you can retrieve those GAM Sessions that actually have an associated GAMSessionFullLog, those that don't have an associated GAMSessionFullLogassociated, and all of them (2).
Once you get the GAMSessionFullLog collection item, you can filter the information retrieved based on the GAMSessionLogType (3).
In order to get the GAMSessionFullLog collection for each GAM Session, use the LoadFullLog property of the GAMSessionLogFilter object (GAMSessionLogFilter is used to assign some filters to get the list of GAM Sessions using the GAMRepository.GetSessionLogs method).
The domain of LoadFullLog property is GAMBoolean (True, False), so you can choose whether to include that information in the results or not (this allows you to improve performance if you don't really need to query that information).
You can choose to retrieve those GAM Sessions that actually have an associated GAMSessionFullLog, those that don't have any or all of them.
Use the IncludeFullLog property of GAMSessionLogFilter for that purpose. The domain of IncludeFullLog is GAMBooleanFilter (True, False, All).
Once you get the GAMSessionFullLog collection item, you can filter the GAMSessionFullLog information using the FullLogType property of the GAMSessionLogFilter object. FullLogType property is based on the GAMSessionLogType domain. At present, the only possible value for GAMSessionLogType is "CheckPermissionFail".
See the example code below:
&GAMSessionLogFilter.LoadFullLog = &LoadFullLog (GAMBoolean : True, False)
&GAMSessionLogFilter.IncludeFullLog = &IncludeFullLog (GAMBooleaFilter: All, True, False)
&GAMSessionLogFilter.FullLogType = &GAMSessionLogType
&GAMSessionLogFilter.Start = (&CurrentPage-1) * &GAMSessionLogFilter.Limit + 1
For &GAMSessionLog in GAMRepository.GetSessionLogsOrderBy(&GAMSessionLogFilter, GAMSessionLogListOrder.Date_Desc, &GAMErrors)
If &GAMSessionLog.FullLog.Count > 0
For &GAMSessionFullLog in &GAMSessionLog.FullLog
&FullLogChar += &GAMSessionFullLog.GUID + ".-." + &GAMSessionFullLog.DateTime.ToString() + ".-." + &GAMSessionFullLog.Type + ".-." + &GAMSessionFullLog.Detail + ".+++."
GAMSessionFullLog object has some properties, such as DateTime, Type (GAMSessionLogType ), and Detail.
The Detail property is a string whose format is a JSON derived from the GAMSessionLogCheckPermissionFail object, when Type = "CheckPermissionFail".
Download the sample from GAM session handling sample