Logs and error codes
All alerts from the QlikView services appear in the Windows event log.
Logging from QlikView Server
Detailed session logs are found in the logging directory, which is specified on the System>Setup>Logging tab in QlikView Management Console (QMC). The default location is %ProgramData%\QlikTech\QlikViewServer.
Log files can be set to split (that is, create new) daily, weekly, monthly, yearly, or never. Performance log intervals can be set from one minute and higher.
Session Log
A session is defined as a single user connected to a single document.
The file name of the session log is Sessions*.log, where * reflects the server name and the split interval. Each entry of the session log contains the fields listed below.
Entry | Description |
---|---|
Exe Type |
Type of QVS build. Example: “RLS64” = 64-bit release build |
Exe Version |
Full version number of QVS. Example: “11.00.11076.0409.10” |
Server Started | Date and time when QVS was started. |
Timestamp | Date and time when the log entry was created. |
Document | QlikView document that was accessed. |
Document Timestamp | File timestamp of the document that was accessed. |
QlikView User | QlikView section access user ID (if used). |
Exit Reason |
Reason for session termination:
Information noteThis is not a complete list, as the exit value in some cases comes from the operating system.
|
Session ID | The ID of the session. |
Session Start | Time when the session was started. |
Session Duration | Duration of session in hours:minutes:seconds. |
CPU Spent (s) | CPU seconds spent by the session. |
Bytes Received | Bytes received by the server during the session. |
Bytes Sent | Bytes sent by the server during the session. |
Calls | Number of QlikView calls during the session (bidirectional). |
Selections | Number of QlikView selections made during the session. |
Authenticated User | Authenticated Windows NT® user ID (if any). |
Identifying User | Client user identification. |
Client Machine Identification |
The client machine identification. By default, this is the universally unique identifier (UUID) receiver from the call to the Windows Management Instrumentation (WMI). If the UUID is unavailable, one of the following IDs may display instead:
|
Serial Number | Serial number of the QlikView client (installed clients only, that is, QlikView Desktop and QlikView plugin). |
Client Type |
Client type used:
|
Client Build Version | Build version of the QlikView client. |
Secure Protocol |
Secure protocol used:
|
Tunnel Protocol | “Tunnel” when QVS tunnel communication is used. |
Server Port | Port used by the server. |
Client Address | Client IP number for the client that is connected to the server (through the port specified in the Server Port field above). |
Client Port | Client port. |
CAL Type |
Client Access License (CAL) type:
|
CAL Usage Count | Number of Usage CALs. |
Performance Log
The performance log is updated at the interval specified on the System>Setup>Logging tab in QMC. The default interval is five minutes. Additional entries are added whenever the server is started or stopped. The file name of the session log is Performance*.log, where * reflects the server name and the split interval.
Each entry of the log contains the fields listed below.
Entry | Description |
---|---|
Exe Type |
Type of QVS build. Example: “RLS64” = 64-bit release build |
Exe Version |
Full version number of QVS. Example: “11.00.11076.0409.10” |
Server Started | Date and time when QVS was started. |
Timestamp | Date and time when the log entry was created. |
EntryType |
Entry type:
|
ActiveDocSessions | Number of document sessions* that has shown activity during the interval and still exists at the end of the interval. |
DocSessions | Total number of document sessions* that exists at the end of the interval. |
ActiveAnonymousDocSessions | Number of document sessions* with anonymous user that has shown activity during the interval and still exists at the end of the interval. |
AnonymousDocSessions | Total number of document sessions* with anonymous user that exists at the end of the interval. |
ActiveTunneledDocSessions | Number of document sessions* with tunneled connection that has shown activity during the interval and still exists at the end of the interval. |
TunneledDocSessions | Total number of document sessions* with tunneled connection that exists at the end of the interval. |
DocSessionStarts | Number of document sessions* that has been initiated during the interval. |
ActiveDocs | Number of documents loaded at the end of the interval in which there has been user activity during the interval. |
RefDocs | Number of documents loaded at the end of the interval for which there is a session at the end of the interval. |
LoadedDocs | Total number of documents loaded at the end of the interval. |
DocLoads | Number of new documents loaded during the interval. |
DocLoadFails | Number of documents that has failed to load during the interval. |
Calls | Total number of calls to QVS during the interval. |
Selections | Number of selection calls during the interval. |
ActiveIpAddrs |
Number of distinct IP addresses that has been active during the interval and still exists at the end of the interval. Information noteTunneled sessions and multiple users originating from the same IP cannot be distinguished.
|
IpAddrs |
Total number of distinct IP addresses connected at the end of the interval. Information noteTunneled sessions and multiple users originating from the same IP cannot be distinguished.
|
ActiveUsers |
Number of distinct NT users that has been active during the interval and still exists at the end of the interval. Information noteAnonymous users cannot be distinguished.
|
Users |
Total number of distinct NT users connected at the end of the interval. Information noteAnonymous users cannot be distinguished.
|
CPULoad | Average CPU load from QVS during the interval. |
VMAllocated(MB) | Size in MB of the virtual memory allocated by QVS at the end of the interval**. |
VMCommitted(MB) | Size in MB of the virtual memory actually used by QVS at the end of the interval. This number is part of VMAllocated(MB) and should not exceed the size of the physical memory in order to avoid unacceptable response times. |
VMFree(MB) | Size in MB of the unallocated virtual memory available to QVS**. |
VMLargestFreeBlock(MB) | Size in MB of the largest contiguous block of unallocated virtual memory available to QVS. This number is part of VMFree(MB). |
UsageCalBalance | “-1.00” = There are no Usage CALs. |
CacheHits | Number of generic cache hits |
CacheLookups | Number of generic cache lookups |
CacheObjectAdded | Number of objects added to the generic cache |
CacheBytesAdded | Number of bytes added to the generic cache |
CacheTimeAdded | Time spent adding new objects to the generic cache |
CacheReplaced | Number of objects replaced in the generic cache |
*One user + one document = One document session.
**VMAllocated(MB) + VMFree(MB) = Total maximum virtual memory space available to the QVS process.
Server-side Extension Log
The file name of the server-side extension (SSE) log is SSE*.log, where * reflects the server name and the split interval. Each entry of the SSE log contains the fields listed below.
Entry | Description |
---|---|
Severity |
|
Timestamp | Date and time when the log entry was created. |
ProcessId | The ID of the process from which the log message originates. |
ThreadId | The ID of the thread that was used when the log message was written to file. |
UserId | The ID of the user. |
QixRequestId | The ID established by the initiator of the request. If this member is not present, the RPC call is assumed to be a notification. |
AppId | The ID of the app that includes the call to the server-side extension (SSE) plugin through an analytic connection. |
App Title | The title of the app that includes the call to the SSE plugin through an analytic connection. |
SSEPlugin |
If the log message was created during a call to the SSE plugin, the mapping/alias of that plugin, for example, SSEPython for a Python plugin. If the log message was created without a call to the SSE plugin, for example, while initializing the SSE, the value is a dash (-). |
SSEPluginAddress |
Two elements separated by a colon that define the analytic connection to the SSE plugin.
|
Message | Log message. |
Event Log
The event log is updated each time a log entry is made in the Windows event log by QVS. The stored information is a mirror of the information written to the Windows event log. The file name of the event log is Events*.log, where * reflects the server name and the split interval.
Use the Event Log Verbosity radio buttons on the System>Setup>QlikView Servers>Logging tab in the QMC to set the verbosity level. Depending on the verbosity level selected, the following entries are written to the Event log:
- Low: Error messages
- Medium: Error and warning messages
- High: Error, warning, and information messages
Each entry of the log contains the fields listed below.
Entry | Description |
---|---|
Server Started | Date and time when QVS was started. |
Timestamp | Date and time when the log entry was created. |
SeverityID |
ID for the severity level:
|
EventID | Unique ID for the event type. |
Severity | Event severity level:
|
Message | Event description. |
End-user Audit Log
The end-user audit log contains information on user selections, including cleared selections, activated sheets, application of bookmarks, accessed reports, and maximized objects.
A log file called AUDIT_<machinename> is saved to %ProgramData%\QlikTech\QlikViewServer.
Entry | Description |
---|---|
Session ID | Session ID |
Server started | Date and time when QVS was started. |
Timestamp | Date and time when the log entry was created. |
Document | Path and name of the document that was accessed. |
Type |
Type of selection made (for example, “Selection” or “Bookmark”). For an overview of the types available, see the table below. |
User | User name. |
Message |
Information on the type of selection or application of bookmark that was made in the document (for example, “Apply Server\Bookmark15”). For an overview of the messages that can be posted in this field, see the table below. |
Id | ID of the object that is connected to the operation (for example, "Document\SH03"). If there is no object connected to the operation, this field is empty. |
Session | Session number |
Types and Messages in the end-user audit log
The types and messages that can be posted in the Type and Message fields in the end-user audit log are listed below.
Type | Message | Description |
---|---|---|
Action | action (#) [XXX] |
Action # was executed with XXX. The numeric value corresponds to one of the following actions:
|
Action | action (#) [XXX] |
|
Bookmark | Apply XXX | Bookmark XXX was applied. |
Bookmark Selection | XXX | Selection XXX was made because a bookmark was selected. Entries of this type are only logged when detailed audit logging is selected. |
Document | Document XXX | Document XXX was opened or closed. |
Export | Sheet Object XXX | Sheet object XXX was exported. |
Maximize | Sheet Object XXX | Sheet object XXX was maximized. |
Minimize | Sheet Object XXX | Sheet object XXX was minimized. |
Sheet Object XXX | Sheet object XXX was printed. | |
Report | Accessed report XXX | Report XXX was accessed. |
Restore | Sheet Object XXX | Sheet object XXX was restored. |
Selection | Clear All | All selections were cleared. |
Selection | XXX | Selection XXX was made. |
SendToExcel | Sheet Object XXX | Sheet object XXX was sent to Microsoft Excel. |
Sheet Object | Sheet Object XXX | Various activities that can apply to Sheet object XXX. |
Session Collaboration | Session Collaboration Initiated, ID:XXX | A session collaboration with ID XXX was initiated. |
Session Collaboration | Session Collaboration user XXX joined session, ID:YYY | User XXX joined the session collaboration with ID YYY. |
Session Collaboration | Session Collaboration user XXX left session, ID:YYY | User XXX left the session collaboration with ID YYY. |
The following example shows the resulting log entry when a bookmark (“Bookmark01”) is selected. The log has been put in a table for better overview.
Entry | Value |
---|---|
Session ID | b5134c4f-7f3d-4107-a37b-d842e9452d93 |
Server started | 20130506T101733.000+0900 |
Timestamp | 20130506T102328.000+0900 |
Document | C:\ProgramData\QlikTech\Documents\Test.qvw |
Type | Bookmark |
User | QlikTech\jsmith |
Message | Apply Server\Bookmark01 |
Id | Document\SH03 |
Session | 3667 |
If detailed audit logging is selected, the log entry above may be followed by one or more log entries that detail the selections that were made because the bookmark was selected. In these log entries, the Type field is set to “Bookmark Selection”.
Manager Audit Log
The audit logging provides the possibility to track changes to tasks and settings in the system in order to see who made the changes and when they were made.
The audit logs are stored in %ProgramData%\QlikTech\ManagementService\AuditLog. One folder per table is created. The number of folders created varies depending on the settings of your installation. Each folder contains one file per day with the changes made to the tasks. The logs are tab separated files.
The tab below lists the entries common to all audit log files. Each audit log files contains further entries specific for each type of log file.
Entry | Description |
---|---|
TransactionID | Transaction ID, which is useful for keeping track of changes made simultaneously. |
ChangeType | Type of operation, Update (new or changed entries) or Delete (entries have been deleted). |
ModifiedTime | Time and date (in UTC) when the changes were made. |
ModifiedByUser | The user that made the changes in the user interface. System means that the change was initiated by the system and not by any user. |
ID | ID of the row (that was updated or deleted) in the table that was changed. |
The following example comes from the AlertEmail table. The log has been put in a table for better overview. Not all entries are listed in this example.
Entry | Value |
---|---|
TransactionID | 455a241d-8428-4dc7-ba67-4ae7cb21cf3d |
ChangeType | Update |
ModifiedTime | 20100202T151254.000+0900 |
ModifiedByUser | MyDomain\mjn |
ID | b3745325-cee7-4fe7-b681-9c9efe22fc5c |
DistributionServiceID | 8846d7dd-bb3f-4289-9c9b-b0ca71b7c3b2 |
EmailAddress | mjn |
The following example comes from the QDSCluster table. Note that TransactionID is the same for both examples. This means that the changes were made simultaneously. Not all entries are listed in this example.
Entry | Value |
---|---|
TransactionID | 455a241d-8428-4dc7-ba67-4ae7cb21cf3d |
ChangeType | Update |
ModifiedTime | 20100202T151254.000+0900 |
ModifiedByUser | MyDomain\mjn |
ID | a37f242c-6d80-42da-a10c-1742d2ec927f |
DistributionServiceID | 8846d7dd-bb3f-4289-9c9b-b0ca71b7c3b2 |
QDSWebAdress | http://computer-mjn:4720/qtxs.asmx |
CurrentWorkorderID | 96bff2dc-f1ea-84d2-b6c4-ea58bf5c98e5 |
Task Performance Summary
The task performance summary is used to log task performance information.
Proceed as follows to activate the task performance summary:
- Open the Settings.ini file in a text editor. The default location of the file is:
- Locate the following section in the Settings.ini file:
- Add
EnableQVBProcessSummary=1
at the end of the section to activate the task performance summary. - Save the Settings.ini file.
- Restart theQlikView Distribution Service (QDS).
C:\Windows\system32\config\systemprofile\AppData\Roaming\QlikTech\QlikViewBatch
[Settings 7]
InterfaceLanguage=English
InstalledLIBID110={4D121C39-415E-11D1-934D-0040333C91CC}
Once the QDS has restarted, the task log is updated.
Entry | Value |
---|---|
Name | qvb.exe |
PID | 1360 |
Peak CPU | 50,0% |
Peak Physical RAM | 26.00 Mb |
Peak Virtual RAM | 21.69 Mb |
Average CPU | CPU: 1,0% |
Average Physical RAM | 24.47 Mb |
Average Virtual RAM | 20.37 Mb |
Peak Total CPU | 58,3% |
Peak Total Physical RAM | 6143.49 Mb |
Peak Total Virtual RAM | 12285.17 Mb |
Elapsed Time | 00:00:36.4692722 |
Reload performance log
You can enable the creation of a dedicated reload performance log .xml file for each task. This log file gathers the task reload performance metadada and process summary.
Do the following:
- Open the QVB Settings.ini file for which by default is located in %System32%\config\systemprofile\AppData\Roaming\QlikTech\QlikViewBatch.
- Add the following line below [Settings 7]:
- Save the Settings.ini file.
EnableQVBReloadMetadata=1
A task reload performance log .xml file is created at each execution of a reload, and saved by default in %ProgramData%\QlikTech\DistributionService\TaskResults. The name format of the .xml file is:
ReloadMetaData_machine-name_20180904T104446_Document-name.xml
Where:
- <machine-name> is the execution machine name
- <20180904T104446> is the date and time of execution
- <Document-name> is the name of the document reloaded
The task reload performance log file has the following reload_meta performance fields:
Entry | Description |
---|---|
cpu_time_spent_in_ms | Time spent by the CPU to perform the reload, displayed in milliseconds. |
logical_cores | Number of cores in the CPU. |
total_memory | Total physical RAM available on the machine. |
static_byte_size | Static memory usage for the document. |
The reload performance log file has the following ProcessSummary performance fields . These entries are similar to those listed in the Task Performance Summary log file. See: Task Performance Summary.
Entry | Description |
---|---|
App | Name of the document reloaded. |
Date | Date, displayed as: 20180904T104446. |
CurrentProcessCpu | Current CPU usage in percentage. For example: 99.991681. |
PeakPhysMemUsedByProc | Peak of physical RAM used by the processor, displayed in byte. |
PeakVirtualMemUsedByProc | Peak of virtual RAM used by the processor, displayed in byte. |
AvgCurrentProcessCpu | Average CPU usage in percentage. For example: 80.81025. |
AvgPhysMemUsedByProc | Average physical RAM used by the processor, displayed in byte. |
AvgVirtualMemUsedByProc | Average virtual RAM used by the processor, displayed in byte. |
TotalCpu | Total CPU available on the machine. |
TotalPhysMem | Total physical RAM available on the machine. |
TotalVirtualMem | Total virtual RAM available on the machine. |
The reload performance log can also list FieldMetadata and TableMetadata entries, which describe the fields and tables visible in the Table Viewer in QlikView.
QIX performance log
The QIX performance log provides detailed information on the QIX Engine performance. By default, the QIX Performance log file is disabled.
Enabling the QIX performance log
To enable the QIX performance log, you must add the line QixPerformanceLogVerbosity to the QlikView Server Service (QVS) Settings.ini file, followed by the desired level of verbosity. For example:
QixPerformanceLogVerbosity=3
The levels of verbosity for the QIX performance log are as follows:
- 0 = Off
- 1 = Fatal
- 2 = Error
- 3 = Warning
- 4 = Info
- 5 = Debug
If you enable the QIX performance log, and set QixPerformanceLogVerbosity to level 3 or 2, the following four levels must also be added to the Settings.ini file:
WarningProcessTimeMs
ErrorProcessTimeMs
WarningPeakMemory
ErrorPeakMemory
These four levels are necessary to determine when to trigger a warning or error event.
Do the following:
- Open the QlikView Server Service (QVS) Settings.ini file, which by default is located in: %ProgramData%\QlikTech\QlikViewServer.
- Add the following line:
- Save the Settings.ini file.
- Restart the QlikView Server Service (QVS).
QixPerformanceLogVerbosity=3
The following table lists the entries included in the QIX performance log.
Entry | Description |
---|---|
Timestamp | Time when the engine wrote the log message to file. |
ProcessId | ID of the engine process from which the log message originates. |
ThreadId | ID of the thread that was used when the engine wrote the log message to file. |
SessionId | ID of the engine session for which the QIX method call was made. |
CServerId | ID of the server instance that handled the request. |
Server Started | Time when the engine started. |
Method | Name of the QIX method that was called. |
RequestId | ID of the request in which the QIX method call was handled. |
Target | Memory address of the target for the QIX method call. |
RequestException | ID of an exception (if any) that occurred as a result of the QIX method call. |
AnyException | Returned error code |
ProcessTime | Amount of time that was needed to process the request. |
WorkTime | Amount of time that the request did actual work. |
LockTime | Amount of time that the request had to wait for an internal lock. |
ValidateTime | Amount of time that the request used for validation. |
TraverseTime | Time in milliseconds spent by the thread or fiber for traversing within the Hypercube |
Handle | ID of the interface that handled the request. The interface can be Global, a certain sheet, a certain object, or similar. |
DocId | Path and name of the QlikView document. |
ObjectId | ID of the object included in the QlikView document. |
NetRAM | Current RAM allocation count in bytes. |
PeakRAM | Peak RAM allocation count in bytes. |
ObjectType | Type of object included in the QlikView document. |