Share via


LogUser

The LogUser class stores information about user interactions within a Commerce Server 2009 Web site.

A visitor to a Commerce Server 2009 Web site is called a user. A LogUser object is created for every user and is used to record information about that user, such as cookie data, user name, and so on. A Visit object is created every time the user visits the Web site. The new Visit object is linked to the LogUser object for that user. A LogUser object may represent an anonymous user, a user who is associated with an organization, or a user who is registered on the Commerce Server 2009 Web site.

The Internet Protocol (IP) information for the user is stored in an IpRef object associated with the LogUser object. A HostnameRef object stores host name information for the IPRef object.

Because the LogUser, URI, and UriQuery classes are the largest classes in the Data Warehouse, they have been altered to increase their performance. These classes do not have formal reldef relationships; instead they have an application-specific relationship with their children. This relationship is defined in the schema for completeness and purposes of discovery through the provider, but is not used by the storage engine of the OLE DB Provider for Commerce Server 2009  for writing parent instances. In application-specific relationships, the joining between the child and parent is not through the parentID (LogUserID), but through the bigint 8-byte LogUserKey. Then the parentID (LogUserID) is set to a constant, 999.

If the LogUser class has a multivalue member, or if the class is involved in a many-to-many relationship, the LogUserID is populated just like any other dimension. The linking table would use the IDs as the linking key, but the child classes would still join them through the LogUserKey.

When you add a new relation to this class, you must update the stored procedure invoked for deleting orphans. Deleting information from this table without deleting orphans is not supported. This class cannot be changed to be updatable. In the ClsDef table, the IsTransactioned field for this class cannot be changed form 1 to 0.

Data Members

Data member name

Data type

Default Value

Description

LogUserID

binary

None

None.

DateCreated

datetime

Null

None.

HasCookie

smallint

Null

None.

UserKey

bigint

Null

Stores the unique key for the object.

UserName

nvarchar(255)

Null

Stores the user name (cs-username) from a World Wide Web Consortium (W3C) formatted log file.

IpRefID

binary

Not Null

None.

RegisteredUserId

binary

Not Null

None.

LogUserInternalFlag

smallint

Null

None

Class Key

LogUserKey is composed of a single data member, UserKey.

Relations

For a description of the relation type, see Data Warehouse Classes.

Relation name

Parent

Child

Type

IPRefUserRel

IPRef

LogUser

2

LogUserBasketRel

LogUser

Basket

5

LogUserCampaignEventRel

LogUser

CampaignEvent

5

LogUserOrderRel

LogUser

Order

5

LogUserRequestRel

LogUser

Request

5

RegisteredUserUserRel

RegisteredUser

LogUser

2

UserOpenUserVisit

LogUser

OpenUserVisit

5

UserVisit

LogUser

Visit

5

UserVisitInfo

LogUser

VisitInfo

5

See Also

Other Resources

Data Warehouse Classes