Skip to content

Information stored in InfluxDB

Butler stores a lot of information in InfluxDB. This page describes the different measurements and tags that Butler send to InfluxDB.

Overview

Butler writes data to InfluxDB from multiple sources:

  1. Task execution events (via UDP messages from Qlik Sense log appenders)

    • Reload tasks (success/failure)
    • External program tasks (success/failure)
    • Distribute tasks (success/failure)
    • Preload tasks (success/failure)
    • User sync tasks (success/failure)
  2. System monitoring (scheduled/continuous monitoring)

    • Windows service status
    • Qlik Sense server version information
    • Qlik Sense server license status
    • Qlik Sense end user access license information
    • Qlik Sense license releases
    • Butler memory usage and uptime

Each measurement below includes details about the tags and fields stored in InfluxDB.

Failed reload tasks

Measurement: reload_task_failed

Tags

Tag nameDescription
hostServer on which the reload took place.
userFull user info (directory + ID) for user doing the reload. Typically sa_scheduler for tasks started via scheduler. For manually started (from QMC) tasks the actual user starting the task is used.
task_idID of reload task that failed.
task_nameName of reload task that failed.
app_idID of Sense app whose reload failed.
app_nameName of Sense app whose reload failed.
log_levelLog level of the Sense log file entry causing the alert
task_executingNodeNameName of node where the reload task was executed.
task_executionStatusNumReload task's execution result code (numeric).
task_executionStatusTextReload task's execution result (text).
appTag_<app tag name 1 from Qlik Sense>App tag defined in the QMC for the Qlik Sense app.
appTag_<app tag name 2 from Qlik Sense>App tag defined in the QMC for the Qlik Sense app.
taskTag_<reload task tag name 1 from Qlik Sense>Task tag defined in the QMC for the Qlik Sense reload task.
taskTag_<reload task tag name 2 from Qlik Sense>Task tag defined in the QMC for the Qlik Sense reload task.
static-tag-1Static tag specified in the Butler configuration file.
static-tag-2Static tag specified in the Butler configuration file.

Fields

Field nameDescription
log_timestampTimestamp of the Sense log file entry that triggered the event.
execution_idExecution ID of the reload task.
log_messageRaw message from the Sense log file entry that triggered the alert.
task_executionStartTime_jsonStart time of the reload task. Stringified JSON with seconds, minutes, hours.
task_executionStopTime_jsonStop time of the reload task. Stringified JSON with seconds, minutes, hours.
task_executionDuration_jsonDuration of the reload task. Stringified JSON with seconds, minutes, hours.
task_executionDuration_secDuration of the reload task in seconds.
task_executionDuration_minDuration of the reload task in minutes.
task_executionDuration_hDuration of the reload task in hours.
task_scriptLogSizeSize (number of characters) of the reload script log associated with the event.
task_scriptLogTailCountNumber of lines from the end of the reload script log that are included in the event.
reload_logLast few lines of the reload script log associated with the event.

Successful reload tasks

Measurement: reload_task_success

Tags

Tag nameDescription
hostServer on which the reload took place.
userFull user info (directory + ID) for user doing the reload. Typically sa_scheduler for tasks started via scheduler. For manually started (from QMC) tasks the actual user starting the task is used.
task_idID of reload task.
task_nameName of reload task.
app_idID of Sense app that was reloaded.
app_nameName of Sense app that was reloaded.
log_levelLog level of the Sense log file entry causing the event
task_executingNodeNameName of node where the reload task was executed.
task_executionStatusNumReload task's execution result code (numeric).
task_executionStatusTextReload task's execution result (text).
appTag_<app tag name 1 from Qlik Sense>App tag defined in the QMC for the Qlik Sense app.
appTag_<app tag name 2 from Qlik Sense>App tag defined in the QMC for the Qlik Sense app.
taskTag_<reload task tag name 1 from Qlik Sense>Task tag defined in the QMC for the Qlik Sense reload task.
taskTag_<reload task tag name 2 from Qlik Sense>Task tag defined in the QMC for the Qlik Sense reload task.
static-tag-1Static tag specified in the Butler configuration file.
static-tag-2Static tag specified in the Butler configuration file.

Fields

Field nameDescription
log_timestampTimestamp of the Sense log file entry that triggered the event.
execution_idExecution ID of the reload task.
log_messageRaw message from the Sense log file entry that triggered the event.
task_executionStartTime_jsonStart time of the reload task. Stringified JSON with seconds, minutes, hours.
task_executionStopTime_jsonStop time of the reload task. Stringified JSON with seconds, minutes, hours.
task_executionDuration_jsonDuration of the reload task. Stringified JSON with seconds, minutes, hours.
task_executionDuration_secDuration of the reload task in seconds.
task_executionDuration_minDuration of the reload task in minutes.
task_executionDuration_hDuration of the reload task in hours.

Failed external program tasks

Measurement: external_program_task_failed

Tags

Tag nameDescription
hostServer on which the external program task executed.
userFull user info (directory + ID) for user running the task. Typically sa_scheduler for scheduled tasks.
task_idID of external program task that failed.
task_nameName of external program task that failed.
log_levelLog level of the Sense log file entry causing the alert.
taskTag_<task tag name 1 from Qlik Sense>Task tag defined in the QMC for the Qlik Sense external program task.
taskTag_<task tag name 2 from Qlik Sense>Task tag defined in the QMC for the Qlik Sense external program task.
static-tag-1Static tag specified in the Butler configuration file.
static-tag-2Static tag specified in the Butler configuration file.

Fields

Field nameDescription
log_timestampTimestamp of the Sense log file entry that triggered the event.
execution_idExecution ID of the external program task.
log_messageRaw message from the Sense log file entry that triggered the event.

Successful external program tasks

Measurement: external_program_task_success

Tags

Tag nameDescription
hostServer on which the external program task executed.
userFull user info (directory + ID) for user running the task. Typically sa_scheduler for scheduled tasks.
task_idID of external program task.
task_nameName of external program task.
log_levelLog level of the Sense log file entry causing the event.
task_executingNodeNameName of node where the external program task was executed.
task_executionStatusNumExternal program task's execution result code (numeric).
task_executionStatusTextExternal program task's execution result (text).
taskTag_<task tag name 1 from Qlik Sense>Task tag defined in the QMC for the Qlik Sense external program task.
taskTag_<task tag name 2 from Qlik Sense>Task tag defined in the QMC for the Qlik Sense external program task.
static-tag-1Static tag specified in the Butler configuration file.
static-tag-2Static tag specified in the Butler configuration file.

Fields

Field nameDescription
log_timestampTimestamp of the Sense log file entry that triggered the event.
execution_idExecution ID of the external program task.
log_messageRaw message from the Sense log file entry that triggered the event.
task_executionStartTime_jsonStart time of the external program task. Stringified JSON with seconds, minutes, hours.
task_executionStopTime_jsonStop time of the external program task. Stringified JSON with seconds, minutes, hours.
task_executionDuration_jsonDuration of the external program task. Stringified JSON with seconds, minutes, hours.
task_executionDuration_secDuration of the external program task in seconds.
task_executionDuration_minDuration of the external program task in minutes.
task_executionDuration_hDuration of the external program task in hours.

Failed distribute tasks

Measurement: distribute_task_failed

Tags

Tag nameDescription
hostServer on which the distribute task executed.
userFull user info (directory + ID) for user running the task. Typically sa_scheduler for scheduled tasks.
task_idID of distribute task that failed.
task_nameName of distribute task that failed.
app_idID of Sense app associated with the distribute task (if available).
app_nameName of Sense app associated with the distribute task (if available).
log_levelLog level of the Sense log file entry causing the alert.
taskTag_<task tag name 1 from Qlik Sense>Task tag defined in the QMC for the Qlik Sense distribute task.
taskTag_<task tag name 2 from Qlik Sense>Task tag defined in the QMC for the Qlik Sense distribute task.
static-tag-1Static tag specified in the Butler configuration file.
static-tag-2Static tag specified in the Butler configuration file.

Fields

Field nameDescription
log_timestampTimestamp of the Sense log file entry that triggered the event.
execution_idExecution ID of the distribute task.
log_messageRaw message from the Sense log file entry that triggered the event.

Successful distribute tasks

Measurement: distribute_task_success

Tags

Tag nameDescription
hostServer on which the distribute task executed.
userFull user info (directory + ID) for user running the task. Typically sa_scheduler for scheduled tasks.
task_idID of distribute task.
task_nameName of distribute task.
app_idID of Sense app associated with the distribute task (if available).
app_nameName of Sense app associated with the distribute task (if available).
log_levelLog level of the Sense log file entry causing the event.
task_executingNodeNameName of node where the distribute task was executed.
task_executionStatusNumDistribute task's execution result code (numeric).
task_executionStatusTextDistribute task's execution result (text).
taskTag_<task tag name 1 from Qlik Sense>Task tag defined in the QMC for the Qlik Sense distribute task.
taskTag_<task tag name 2 from Qlik Sense>Task tag defined in the QMC for the Qlik Sense distribute task.
static-tag-1Static tag specified in the Butler configuration file.
static-tag-2Static tag specified in the Butler configuration file.

Fields

Field nameDescription
log_timestampTimestamp of the Sense log file entry that triggered the event.
execution_idExecution ID of the distribute task.
log_messageRaw message from the Sense log file entry that triggered the event.
task_executionStartTime_jsonStart time of the distribute task. Stringified JSON with seconds, minutes, hours.
task_executionStopTime_jsonStop time of the distribute task. Stringified JSON with seconds, minutes, hours.
task_executionDuration_jsonDuration of the distribute task. Stringified JSON with seconds, minutes, hours.
task_executionDuration_secDuration of the distribute task in seconds.
task_executionDuration_minDuration of the distribute task in minutes.
task_executionDuration_hDuration of the distribute task in hours.

Failed preload tasks

Measurement: preload_task_failed

Tags

Tag nameDescription
hostServer on which the preload task executed.
userFull user info (directory + ID) for user running the task. Typically sa_scheduler for scheduled tasks.
task_idID of preload task that failed.
task_nameName of preload task that failed.
app_idID of Sense app associated with the preload task (if available).
app_nameName of Sense app associated with the preload task (if available).
log_levelLog level of the Sense log file entry causing the alert.
taskTag_<task tag name 1 from Qlik Sense>Task tag defined in the QMC for the Qlik Sense preload task.
taskTag_<task tag name 2 from Qlik Sense>Task tag defined in the QMC for the Qlik Sense preload task.
static-tag-1Static tag specified in the Butler configuration file.
static-tag-2Static tag specified in the Butler configuration file.

Fields

Field nameDescription
log_timestampTimestamp of the Sense log file entry that triggered the event.
execution_idExecution ID of the preload task.
log_messageRaw message from the Sense log file entry that triggered the event.

Successful preload tasks

Measurement: preload_task_success

Tags

Tag nameDescription
hostServer on which the preload task executed.
userFull user info (directory + ID) for user running the task. Typically sa_scheduler for scheduled tasks.
task_idID of preload task.
task_nameName of preload task.
app_idID of Sense app associated with the preload task (if available).
app_nameName of Sense app associated with the preload task (if available).
log_levelLog level of the Sense log file entry causing the event.
task_executingNodeNameName of node where the preload task was executed.
task_executionStatusNumPreload task's execution result code (numeric).
task_executionStatusTextPreload task's execution result (text).
taskTag_<task tag name 1 from Qlik Sense>Task tag defined in the QMC for the Qlik Sense preload task.
taskTag_<task tag name 2 from Qlik Sense>Task tag defined in the QMC for the Qlik Sense preload task.
static-tag-1Static tag specified in the Butler configuration file.
static-tag-2Static tag specified in the Butler configuration file.

Fields

Field nameDescription
log_timestampTimestamp of the Sense log file entry that triggered the event.
execution_idExecution ID of the preload task.
log_messageRaw message from the Sense log file entry that triggered the event.
task_executionStartTime_jsonStart time of the preload task. Stringified JSON with seconds, minutes, hours.
task_executionStopTime_jsonStop time of the preload task. Stringified JSON with seconds, minutes, hours.
task_executionDuration_jsonDuration of the preload task. Stringified JSON with seconds, minutes, hours.
task_executionDuration_secDuration of the preload task in seconds.
task_executionDuration_minDuration of the preload task in minutes.
task_executionDuration_hDuration of the preload task in hours.

Failed user sync tasks

Measurement: user_sync_task_failed

Tags

Tag nameDescription
hostServer on which the user sync task executed.
userFull user info (directory + ID) for user running the task. Typically sa_scheduler for scheduled tasks.
task_idID of user sync task that failed.
task_nameName of user sync task that failed.
log_levelLog level of the Sense log file entry causing the alert.
taskTag_<task tag name 1 from Qlik Sense>Task tag defined in the QMC for the Qlik Sense user sync task.
taskTag_<task tag name 2 from Qlik Sense>Task tag defined in the QMC for the Qlik Sense user sync task.
static-tag-1Static tag specified in the Butler configuration file.
static-tag-2Static tag specified in the Butler configuration file.

Fields

Field nameDescription
log_timestampTimestamp of the Sense log file entry that triggered the event.
execution_idExecution ID of the user sync task.
log_messageRaw message from the Sense log file entry that triggered the event.

Successful user sync tasks

Measurement: user_sync_task_success

Tags

Tag nameDescription
hostServer on which the user sync task executed.
userFull user info (directory + ID) for user running the task. Typically sa_scheduler for scheduled tasks.
task_idID of user sync task.
task_nameName of user sync task.
log_levelLog level of the Sense log file entry causing the event.
task_executingNodeNameName of node where the user sync task was executed.
task_executionStatusNumUser sync task's execution result code (numeric).
task_executionStatusTextUser sync task's execution result (text).
taskTag_<task tag name 1 from Qlik Sense>Task tag defined in the QMC for the Qlik Sense user sync task.
taskTag_<task tag name 2 from Qlik Sense>Task tag defined in the QMC for the Qlik Sense user sync task.
static-tag-1Static tag specified in the Butler configuration file.
static-tag-2Static tag specified in the Butler configuration file.

Fields

Field nameDescription
log_timestampTimestamp of the Sense log file entry that triggered the event.
execution_idExecution ID of the user sync task.
log_messageRaw message from the Sense log file entry that triggered the event.
task_executionStartTime_jsonStart time of the user sync task. Stringified JSON with seconds, minutes, hours.
task_executionStopTime_jsonStop time of the user sync task. Stringified JSON with seconds, minutes, hours.
task_executionDuration_jsonDuration of the user sync task. Stringified JSON with seconds, minutes, hours.
task_executionDuration_secDuration of the user sync task in seconds.
task_executionDuration_minDuration of the user sync task in minutes.
task_executionDuration_hDuration of the user sync task in hours.

Windows service info

Measurement: win_service_state

Tags

Tag nameDescription
butler_instanceName of the Butler instance, from config file.
hostServer on which the reload took place.
service_nameName of the Windows service.
display_nameDisplay name of the Windows service.
friendly_nameFriendly name of the Windows service (as defined in the Butler config file).

Fields

Field nameDescription
state_numState of the Windows service (numeric).
state_textState of the Windows service (text).
startup_mode_numStartup mode of the Windows service (numeric).
startup_mode_textStartup mode of the Windows service (text).

Qlik Sense server version info

Measurement: qlik_sense_version

Tags

Tag nameDescription
butler_instanceName of the Butler instance, from Butler.influxDb.instanceTag in config file.

In addition to above, all tags defined in Butler.qlikSenseVersion.versionMonitor.destination.influxDb.tag.static in the config file are added to each datapoint that is sent to InfluxDB.

Fields

Field nameDescription
content_hashContent hash, as returned from the Sense version API.
sense_idSense ID, as returned from the Sense version API. This is usually on the form qliksenseserver:<version>
product_nameSense product name, for example Qlik Sense
deployment_typeSense deployment type, for example QlikSenseServer
versionSense version, for example 14.173.4
release_labelSense release label, for example February 2024 Patch 1
deprecated_product_versionSense old/deprecated product version, for example 4.0.x
copyright_year_rangeSense copyright year range, for example 1993-2024

Qlik Sense server license info

Measurement: qlik_sense_server_license

Tags

Tag nameDescription
butler_instanceName of the Butler instance, from Butler.influxDb.instanceTag in config file.

In addition to above, all tags defined in Butler.qlikSenseLicense.serverLicenseMonitor.destination.influxDb.tag.static in the config file are added to each datapoint that is sent to InfluxDB.

Fields

Field nameDescription
license_expiredWhether the Sense license has expired. true/false.
expiry_dateExpiry date of the Sense server license, YYYY-MM-DD format.
days_until_expiryNumber of days until the Sense server license expires. If expiration date has passed this number will be negative.

Qlik Sense end user access license info

The access license information returned by the Qlik Sense API is not very well documented by Qlik.
As a result it is not always clear what the different fields mean.
This is highlighted for each affected field below.

Measurement: qlik_sense_license

Each datapoint has a tag called license_type that can have the following values:

  • professional
  • analyzer
  • analyzer_capacity
  • token_login
  • token_user
  • tokens_available

The tags are the same for all license types, but the fields differ as follows.

Tags

Tag nameDescription
butler_instanceName of the Butler instance, from Butler.influxDb.instanceTag in config file.

In addition to above, all tags defined in Butler.qlikSenseLicense.licenseMonitor.destination.influxDb.tag.static in the config file are added to each datapoint that is sent to InfluxDB.

License types "professional" and "analyzer"

Field nameDescription
allocatedNumber of allocated professional licenses.
availableNumber of available professional licenses.
excessNumber of excess professional licenses. Unclear what this means.
quarantinedNumber of quarantined professional licenses.
totalTotal number of professional licenses included in the installed Qlik Sense license.
usedNumber of professional licenses in use right now.

License type "analyzer_capacity"

Field nameDescription
allocated_minutesTotal number of analyzer capacity minutes available in the installed Qlik Sense license.
unavailable_minutesNumber of analyzer capacity minutes that are currently unavailable. Unclear what this means.
used_minutesNumber of analyzer capacity minutes used so far this month.

License type "token_login"

Field nameDescription
allocated_tokensUnclear what this means.
token_costUnclear what this means.
unavailable_tokensUnclear what this means.
used_tokensUnclear what this means.

License type "token_user"

Field nameDescription
allocated_tokensUnclear what this means.
quarantined_tokensUnclear what this means.
token_costUnclear what this means.
used_tokensUnclear what this means.

License type "tokens_available"

This license type contains aggregated token information.

Field nameDescription
available_tokensNumber of tokens available. Unclear what this means.
total_tokensTotal number of tokens included in the installed Qlik Sense license. Unclear what this means.

Butler uptime info

Measurement: butler_memory_usage

Tags

Tag nameDescription
butler_instanceName of the Butler instance, from config file.
versionVersion of Butler.

Fields

Field nameDescription
heap_usedAmount of heap memory used by Butler.
heap_totalTotal amount of heap memory available to Butler.
externalAmount of external memory used by Butler.
process_memoryAmount of memory used by the Butler process.

Qlik Sense license releases

Measurement: qlik_sense_license_release

This measurement tracks when Butler automatically releases unused Qlik Sense licenses based on the configured inactivity threshold.

Tags

Tag nameDescription
butler_instanceName of the Butler instance, from Butler.influxDb.instanceTag in config file.
license_typeType of license that was released (e.g., professional, analyzer).
userUser whose license was released, in format userDir\userId.

In addition to above, all tags defined in Butler.qlikSenseLicense.licenseRelease.destination.influxDb.tag.static in the config file are added to each datapoint that is sent to InfluxDB.

Fields

Field nameDescription
days_since_last_useNumber of days since the license was last used by the user.

Released under the MIT License.